我事先表示歉意-我已经尝试过找到答案,但是我在使用正确的搜索字词方面遇到了困难,因此这可能是重复的。我有一个大型数据集,试图为组分配一个唯一的数字。但是我需要不在另一列中按组分配数字(因为它们不是唯一的),所以我需要按行号进行分配。因此,我希望每三行分配一个顺序号,以便每3个组现在唯一地进行标记。
这是我所拥有的非常简化的版本。
const
如您对col1所看到的,它都是a,但是物种1重复3次,因此我无法基于此创建唯一的组。这就是我想要的:
const arr = [{id: 1}, {id: 2}, {id: 3}];
if (item = arr.find(v => v.id === 2)) {
console.log(item);
}
希望我解释得很好吗?
谢谢
答案 0 :(得分:2)
如果示例数据代表您的实际数据集,则以下代码应该有效:
data$col3 <- rep(seq_len(nrow(data)/3), each = 3)
data
# col1 col2 col3
# 1 a species1 1
# 2 a species2 1
# 3 a species3 1
# 4 a species1 2
# 5 a species2 2
# 6 a species3 2
# 7 a species1 3
# 8 a species2 3
# 9 a species3 3