我想删除基于两个列的重复行,而不只是一个。
我的输入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))
,但我不会删除同时重复这两列的行。
谢谢!
答案 0 :(得分:10)
如果您想使用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")]),]
答案 1 :(得分:-2)
使用unique()
删除重复的值。