同时删除两列中的重复行[重复]
Posted
技术标签:
【中文标题】同时删除两列中的重复行[重复]【英文标题】:Delete duplicate rows in two columns simultaneously [duplicate] 【发布时间】:2014-10-07 17:12:15 【问题描述】:我想删除基于两个列的重复行,而不是只删除一个。
我的输入df
:
RAW.PVAL GR allrl Bak
0.05 fr EN1 B12
0.05 fg EN1 B11
0.45 fr EN2 B10
0.35 fg EN2 B066
我的输出:
RAW.PVAL GR allrl Bak
0.05 fr EN1 B12
0.45 fg EN2 B10
0.35 fg EN2 B066
我曾尝试过df<- subset(df, !duplicated(allrl, RAW.PVAL))
,但我无法删除这两列同时重复的行。
谢谢!
【问题讨论】:
如果目标列不是后续的,它会起作用吗? @user3091668。现在,您的结果基于重复的列。 【参考方案1】:如果你想使用subset
,你可以试试:
subset(df, !duplicated(subset(df, select=c(allrl, RAW.PVAL))))
# RAW.PVAL GR allrl Bak
#1 0.05 fr EN1 B12
#3 0.45 fr EN2 B10
#4 0.35 fg EN2 B066
但是,我认为@thelatemail 的方法会更好
df[!duplicated(df[c("RAW.PVAL","allrl")]),]
【讨论】:
对不起,我忘了引用我还有另一个列。我修好了。 @user3091668。看起来您的列每秒都在增加 :=) 我的第一个例子很糟糕。我试图让它简单,但我简化了很多......现在我认为没问题。对不起。【参考方案2】:使用unique()
删除重复值。
【讨论】:
以上是关于同时删除两列中的重复行[重复]的主要内容,如果未能解决你的问题,请参考以下文章