我想过滤一个框架,如果至少有两列的df是相等的,但在一个动态的方式。
假设下面的dataframe:
data.frame(Var1 = c(1,1,1,2,3,4,4),Var2=c(1,2,6,8,2,5,4),Var3=c(1,3,5,6,7,5,6))
Var1 Var2 Var3
1 1 1 1
2 1 2 3
3 1 6 5
4 2 8 6
5 3 2 7
6 4 5 5
7 4 4 6
我想保留根本不相等的值,所以如果至少有2列与行相等,它们将被删除。最终结果应为:
Var1 Var2 Var3
2 1 2 3
3 1 6 5
4 2 8 6
5 3 2 7
由于我的框架中的列数应该增加,如果它是动态的,受到mutate(across())语句的启发,那就更好了。
非常感谢
3条答案
按热度按时间jmo0nnb31#
liwlm1x92#
使用dqr可以如下所示完成:
4xy9mtcn3#
在
dplyr
中,一种更新的方法是使用if_any
:您还可以使用
collapse::varying
来测试数据中的变化: