考虑两列删除重复的行并忽略顺序

时间:2017-03-30 10:43:46

标签: r dataframe

我有一个包含三列的数据框。第1列,第2列和第3列是值。数据帧根据值(desc)排序。在下面的例子中,我想删除第三行,因为A> B已经存在,所以我不想考虑B> A。如何删除第三列(此类实例)。这适用于所有,例如,A> C已经存在,因此应该删除C> A.

Column1 Column2 Value
A       B       10
A       C       8
B       A       6

1 个答案:

答案 0 :(得分:1)

我们可以在duplicated行之后使用sort列的子集,即使用感兴趣的列,1& 2,然后使用逻辑vector子集行

df1[!duplicated(t(apply(df1[1:2], 1, sort))),]
#   Column1 Column2 Value
#1       A       B    10
#2       A       C     8