fork download
  1. df=data.frame(x=c(1,1,2,2,3,3)
  2. ,y=c(2,3,4,6,2,7))
  3.  
  4. myuniq=function(df){
  5. if(NROW(df)<2){
  6. return(df)
  7. } else {
  8. uniq=!apply(apply(df,2,"%in%",df[1,]),1,any)
  9. return(rbind(df[1,],myuniq(df[uniq,])))
  10. }
  11. }
  12. myuniq(df)
  13.  
  14. set.seed(123456)
  15. n=100000
  16. df=data.frame(x=sample(1:10,n,replace = T)
  17. ,y=sample(1:10,n,replace = T))
  18. # 允許 x,y 同列相等
  19. myuniq(df)
  20. # 不允許 x,y 同列相等
  21. myuniq(df[!(df$x==df$y),])
  22.  
Success #stdin #stdout 1.57s 64192KB
stdin
Standard input is empty
stdout
  x y
1 1 2
6 3 7
     x y
1    8 2
3    4 9
7    6 1
9   10 7
25   5 5
156  3 3
    x y
1   8 2
3   4 9
7   6 1
9  10 7
78  3 5