我有以下数据集:(样本)
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)
它为我提供了我想要的正确数据集.有什么不同?我在第一个命令中做错了什么?谢谢
==检查两个对象是否完全相同.您正在尝试检查一个对象(每个元素quest$Team)是否属于值列表.正确的方法是使用%in%
q10best <- filter(quest,Team %in% c(2,4,6,10,13,17,21))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
167 次 |
| 最近记录: |