在完成数据工作时,我遇到了这个问题。 数据如下,
font-family
我想通过仅使用唯一的var1和唯一的var2来进行配对。
换句话说,1~4行可以是一组,我只需要保留第1和第4列。并且,5~13行可以是另一组,我只需要保留这一对(1703 29,1704 30,1705 31)。也就是说,我希望得到这个结果
row_number var1 var2
1 1921 16
2 1922 16
3 1921 17
4 1922 17
5 1703 29
6 1704 29
7 1705 29
8 1703 30
9 1704 30
10 1705 30
11 1703 31
12 1704 31
13 1705 31
我有更多的意见。
答案 0 :(得分:1)
假设您的数据位于名为d
的数据框中。然后
out <- data.frame(row_number = NA, var1 = NA, var2 = NA)
for (i in 1:nrow(d)) {
if (!(d[i, "var1" ] %in% out[, "var1"]) & !(d[i, "var2"] %in% out[, "var2"])) {
out <- rbind(out, d[i,])
}
}
out <- out[-1, ]
out
# row_number var1 var2
# 2 1 1921 16
# 4 4 1922 17
# 5 5 1703 29
# 9 9 1704 30
# 13 13 1705 31
通过遍历d
行并仅提取var1
和var2
以前未出现在输出数据框中的行来为您提供所需的结果。