dplyr过滤器函数提供错误的数据

Mic*_*zak 3 r filter dplyr

我有以下数据集:(样本)

    Team    Job Question    Answer
1   1        1     2             1
2   1        1     3a            2
3   1        1     3b            2
4   1        1     4a            1
5   1        1     4b            1
Run Code Online (Sandbox Code Playgroud)

我有21个队,所以有很多行.我正在尝试过滤在实验中表现良好的团队行(使用dplyr包):

q10best <- filter(quest,Team==c(2,4,6,10,13,17,21))
Run Code Online (Sandbox Code Playgroud)

但是它让我搞砸了数据并且丢失了许多行.另一方面,当我使用时:

q10best <- filter(quest,Team==2 | Team==4 | Team==6 | Team==10 | Team==13 | Team==17 | Team==21)
Run Code Online (Sandbox Code Playgroud)

它为我提供了我想要的正确数据集.有什么不同?我在第一个命令中做错了什么?谢谢

sco*_*coa 5

==检查两个对象是否完全相同.您正在尝试检查一个对象(每个元素quest$Team)是否属于值列表.正确的方法是使用%in%

q10best <- filter(quest,Team %in% c(2,4,6,10,13,17,21))
Run Code Online (Sandbox Code Playgroud)