2017-05-03 53 views
0

一个例子:R如何选择两列中的值相同的行?

> df1 
    c1 c2 c3 
1 2 3 8 
2 1 6 2 
3 2 9 8 

我希望得到一个子集,其中C1和C3值是相同的,所以在这个例子中,我希望得到的结果是:

c1 c2 c3 
1 2 3 8 
3 2 9 8 

是否有任何直接的在R中这样做的方法?谢谢。

回答

1

我们可以在与感兴趣的列数据集的子集适用duplicated发现都是重复的行并用它来子集行

df1[duplicated(df1[c('c1','c3')])|duplicated(df1[c('c1','c3')], fromLast=TRUE),] 
# c1 c2 c3 
#1 2 3 8 
#3 2 9 8 
+0

谢谢,我已经试过这和它的作品。我不太了解'|'在这种情况下工作,但我也试图添加另一列c4,这句话似乎也适用。 –

+0

@ j.du它基于仅为每列选择重复元素。你也可以勾选[here](http://stackoverflow.com/help/someone-answers) – akrun

相关问题