我正在尝试从数据帧中提取单个值。而是返回值和变量的级别(见下文)。
如何确保它只返回值“缺陷”或“合作”而没有级别? '''
Response_1 = book[c("id1", "bid1")]
Response_2 = book[c("id2", "bid2")]
my_id = "3"
main_data1 = subset(Response_1, Response_1$id1 %in% my_id)
main_data2 = subset(Response_2 , Response_2$id2 %in% my_id)
names(main_data2) = c("id1", "bid1")
names(main_data1) = c("id1", "bid1")
main_data = rbind(main_data1, main_data2)
print(main_data[length(main_data$bid1), 2])
> print(main_data[length(main_data$bid1), 2])
[1] cooperate
Levels: cooperate defect
答案 0 :(得分:0)
由于您没有提供原始数据结构,因此我不知道它是什么,但是当您使用rbind
时,您固有地会调用data.frame
。默认情况下,data.frame
的参数为stringsAsFactors = T
通常,您可以通过以下方法解决此问题:使用stringsAsFactors = F
调用数据框,或使用df$column = as.character(df$column)
之类的手动调整列
在这种情况下,如果您不想重新编码数据帧,请执行akrun所说的并致电print(as.character(main_data[length(main_data$bid1), 2]))