gpt4 book ai didi

r - 如何通过以下标准保持配对? (解释了我的标准)

转载 作者:搜寻专家 更新时间:2023-10-30 23:37:44 25 4
gpt4 key购买 nike

我在处理数据时遇到了这个问题。数据如下,

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

我只想使用唯一的 var1 和唯一的 var2 来配对。

也就是说,1~4行可以为一组,我只需要保留第1和第4列即可。而且,5~13行可以是另一组,我只需要保留这一对(1703 29、1704 30、1705 31)。也就是我要有这个结果

row_number      var1 var2
1 1921 16
4 1922 17
5 1703 29
9 1704 30
13 1705 31


我有更多的观察。

最佳答案

假设您的数据位于名为 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 的行并仅提取 var1var2 先前未出现在输出中的行,为您提供所需的结果数据框。

关于r - 如何通过以下标准保持配对? (解释了我的标准),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39606952/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com