以下作品 -
3 %in% c(3,4,5) # Returns TRUE
如果我在数据帧中有x向量 -
x
1
3
5
7
如何根据c(3,4,5)中的x%生成TRUE / FALSE向量?简单地使用data['x'] %in c(3,4,5)
不起作用是它只返回一个值而不是5。
答案 0 :(得分:7)
data[, "x"] %in% c(3,4,5)
或
data[["x"]] %in% c(3,4,5)
或
data$x %in% c(3,4,5)
应该这样做。
答案 1 :(得分:1)
d = data.frame(x=c(1,3,5,7),y=c(23,42,1,5))
> d["x"] %in% c(3,4,5)
[1] FALSE
> unlist(d["x"]) %in% c(3,4,5)
[1] FALSE TRUE TRUE FALSE
正如洪所说,以下可能更简单:
> d[,"x"] %in% c(3,4,5)
[1] FALSE TRUE TRUE FALSE
> d$x %in% c(3,4,5)
[1] FALSE TRUE TRUE FALSE