同时删除两列中的重复行

use*_*668 9 r subset duplicates

我想删除基于两个列的重复行,而只是一个.

我的意见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
Run Code Online (Sandbox Code Playgroud)

我的输出:

RAW.PVAL  GR  allrl   Bak
0.05      fr   EN1    B12
0.45      fg   EN2    B10
0.35      fg   EN2    B066
Run Code Online (Sandbox Code Playgroud)

我曾尝试过df<- subset(df, !duplicated(allrl, RAW.PVAL)),但我不会删除同时复制这两列的行.

谢谢!

akr*_*run 11

如果你想使用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
Run Code Online (Sandbox Code Playgroud)

但是,我认为@ thelatemail的方法会更好

  df[!duplicated(df[c("RAW.PVAL","allrl")]),]
Run Code Online (Sandbox Code Playgroud)