找到唯一的行

ago*_*dev 2 r unique duplicates dataframe

这看起来很简单,但我无法弄清楚.

鉴于此数据框架

df=data.frame(
  x = c(12,12,165,165,115,148,148,155,155,521),
  y = c(54,54,122,122,215,108,108,655,655,151)  
)


 df
     x   y
1   12  54
2   12  54
3  165 122
4  165 122
5  115 215
6  148 108
7  148 108
8  155 655
9  155 655
10 521 151
Run Code Online (Sandbox Code Playgroud)

现在,我如何获得仅存在一次的行.这是第5行和第10行.行的顺序可以完全是任意的,因此检查"下一行"不是一种选择.我尝试了很多东西,但是我的data.frame没有任何工作,它有大约40k行.

我有一个解决方案在我的data.frame的子集(~1k行)上工作,需要3分钟来处理.因此,我的解决方案需要120分钟的原始data.frame,这是不合适的.有人可以帮忙吗?

Psi*_*dom 6

检查duplicated数据框的开头和结尾,如果没有返回true,则选择它:

df[!(duplicated(df) | duplicated(df, fromLast = TRUE)),]

#     x   y
#5  115 215
#10 521 151
Run Code Online (Sandbox Code Playgroud)