remove any rows with duplicates
本问题已经有最佳答案,请猛点这里访问。
假设我有一个如下所示的数据框(我们称之为 df)。我正在尝试根据给定的列 (df$car) 删除给定数据框中的所有重复项。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | options(stringsAsFactors=F) car <- c('car1', 'car2', 'car2', 'car3', 'car4', 'car4', 'car4', 'car5', 'car6', 'car6') location <- c(111,345,345,123,678,678,678,432,232,232) value <- c(1,1,1,1,2,2,2,2,4,4) a <- c('AT','ATC','TAT','C','TT','TGGGG','GGC','CC','AA','AT') b <- c('A', 'TAG','TAG','G','AA','AA','AA','GG','TT','TT') df <- data.frame(car,location,value,a,b) > df car location value a b 1 car1 111 1 AT A 2 car2 345 1 ATC TAG 3 car2 345 1 TAT TAG 4 car3 123 1 C G 5 car4 678 2 TT AA 6 car4 678 2 TGGGG AA 7 car4 678 2 GGC AA 8 car5 432 2 CC GG 9 car6 232 4 AA TT 10 car6 232 4 AT TT |
我想要的输出如下。我希望删除所有重复的列,而不仅仅是唯一值。
1 2 3 4 | car location value a b 1 car1 111 1 AT A 4 car3 123 1 C G 8 car5 432 2 CC GG |
请注意:我相信这是一个与过去发布的其他问题不同的问题。大多数问题都要求基于给定列的唯一行,但我要求甚至删除这些行。如果这是一个重复的帖子,我很高兴关闭这个帖子 - 我只是还没有找到我要找的东西!谢谢你的帮助!
你能试试这个方法吗:
1 | df[!(duplicated(df$car) | duplicated(df$car, fromLast = TRUE)), ] |