现在看到的很多删除重复行的函数unique、distinct等等在筛选重复行并删除时,都会保留第一次出现。有没有什么办法可以把重复行全部删除的,换言之只保留从未跟其他数据重复过的数据
2条回答 默认 最新
- 春休夏末 2023-02-09 18:26关注
R语言 现在看到的很多删除重复行的函数unique、distinct等等在筛选重复行并删除时,都会保留第一次出现。有没有什么办法可以把重复行全部删除的,换言之只保留从未跟其他数据重复过的数据? 可以使用R语言中的duplicated函数,该函数可以标记出重复行,然后可以使用subset函数来删除重复行。 例子: # 定义数据集 dat <- data.frame(x = c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10), y = c(2, 3, 3, 4, 4, 6, 7, 8, 8, 10)) # 标记重复行 duplicated_rows <- duplicated(dat) # 删除重复行 dat_unique <- subset(dat, !duplicated_rows) # 输出结果 dat_unique # x y # 1 1 2 # 2 2 3 # 4 4 4 # 6 6 6 # 7 7 7 # 9 9 8 # 10 10 10
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报