这种语法可能不符合R的规则,但是为何一个可以成功筛选出,另一个则不行?有人对这方面有研究的?发表一下看法
下面内容为试验时的两个例子:
> cc
ccc bb lulu
1 a 1 8
2 b 2 9
3 c 3 10
> list(c('b','c'))
[[1]]
[1] "b" "c"
> cc[cc[1]==list(c('b','c')),]
[1] ccc bb lulu -------------此句输出仅输出列名
<0 行> (或0-长度的row.names)
Warning messages:
1: In is.na(e1) | is.na(e2) :
longer object length is not a multiple of shorter object length
2: In `==.default`(left, right) :
longer object length is not a multiple of shorter object length
> rs[2]
[[1]]
[1] "37917" "25405"
> dcaptb2[dcaptb2[1]==rs[2],] #--虽然后面有提醒,但还是顺利输出
会员ID 冻肉 罐装肉 罐装蔬菜 牛奶 啤酒 葡萄酒 蔬菜水果 甜食 鲜肉 饮料 鱼
244 25405 0 1 0 0 0 0 0 0 0 0 2
369 37917 0 0 0 0 0 2 1 1 2 0 0
Warning message:
In FUN(left, right) :
longer object length is not a multiple of shorter object length