gpt4 book ai didi

r - 合并 R 中的唯一值

转载 作者:行者123 更新时间:2023-12-02 09:35:07 25 4
gpt4 key购买 nike

这里是示例数据:

set.seed(123)
data1 <- data.frame(id1=rep(1:5,each=2),nam1=rnorm(5,1))
data2 <- data.frame(id2=rep(3:12,each=2),nam2=rexp(10,1))

这个合并(以及我所知道的它的扩展)给出:

merge(data1,data2, by.x="id1",by.y="id2")

id1 nam1 nam2
1 3 2.3152036 2.5419696
2 3 2.3152036 4.8606998
3 3 0.6713674 2.5419696
4 3 0.6713674 4.8606998
5 4 1.4768687 0.6174029
6 4 1.4768687 0.2536772
7 4 2.7471229 0.6174029
8 4 2.7471229 0.2536772
9 5 -0.3507662 2.6098995
10 5 -0.3507662 0.6313073
11 5 2.3152036 2.6098995
12 5 2.3152036 0.6313073

所以它给出了 data1 和 data2 的所有行!相同 id 的双行。

我想要得到的是这样的:

    id1 nam2        nam2
1 1 0.4395244 NA
2 1 0.7698225 NA
3 2 2.5587083 NA
4 2 1.0705084 NA
5 3 1.1292877 0.31422729
6 3 0.4395244 0.14526680
7 4 0.7698225 2.72623646
8 4 2.5587083 0.02915345
9 5 1.0705084 1.00483006
10 5 1.1292877 0.48021473

所以我只想获取 data1 和 correspod 的条目。数据匹配2

最佳答案

感谢@Vincent Guillemot的建议,解决了我真正需要的!

set.seed(123)
data1 <- data.frame(id1=rep(1:5,each=2),nam1=rnorm(5,1))
data2 <- data.frame(id2=rep(3:12,each=2),nam2=rexp(10,1))

data1$id1 <- make.unique(as.character(data1$id1))
data2$id2 <- make.unique(as.character(data2$id2))

merge(data1,data2, by.x="id1",by.y="id2",all.x=TRUE)

关于r - 合并 R 中的唯一值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27176853/

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