我正在尝试在另一列中标记重复的ID。我不一定要删除它们,只需创建一个标识(0/1)即可确定ID是唯一的还是重复的。在sql中,它是这样的:
选择ID
,从ID
组中按TABLE
)计数(ID
)a
在TABLE
上。ID
= a。ID
设置ID Duplicate Flag Column 1
= 1
其中count> 1;
有没有一种方法可以简单地在r中做到这一点? 任何帮助将不胜感激。
答案 0 :(得分:0)
以duplicated
为例,让我们从一些值(这里是数字,但字符串会做同样的事情)开始
x <- c(9, 1:5, 3:7, 0:8)
x
# 9 1 2 3 4 5 3 4 5 6 7 0 1 2 3 4 5 6 7 8
如果要标记第二份及以后的副本
as.numeric(duplicated(x))
# 0 0 0 0 0 0 1 1 1 0 0 0 1 1 1 1 1 1 1 0
如果您要标记出现两次或两次以上的所有值
as.numeric(x %in% x[duplicated(x)])
# 0 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 0