【发布时间】:2021-09-08 08:07:16
【问题描述】:
我有一个数据集,其中包含一个 id 变量和一个合作伙伴 id 变量和一个值。换句话说,每个观察都与另一个观察配对。我想创建一个新变量,它接受一个伙伴的值并将其添加为一个新列。
下面我有一个示例数据:
set.seed(123)
df <- data.frame(id = c(1:10),
partner_id = c(6,7,8,9,10,1,2,3,4,5),
value = runif(10))
df
id partner_id value
1 1 6 0.2875775
2 2 7 0.7883051
3 3 8 0.4089769
4 4 9 0.8830174
5 5 10 0.9404673
6 6 1 0.0455565
7 7 2 0.5281055
8 8 3 0.8924190
9 9 4 0.5514350
10 10 5 0.4566147
如上所述,我想用合作伙伴的 (partner_id) value 添加一个变量。例如,id == 1 的观察值具有 partner_id == 6,因此,我想要一个新的第四列 (partner_value),其中 id == 1 具有 partner_value == 0.0455565。
所以最终结果应该是这样的:
id partner_id value partner_value
1 1 6 0.2875775 0.0455565
2 2 7 0.7883051 0.5281055
3 3 8 0.4089769 0.8924190
4 4 9 0.8830174 0.5514350
5 5 10 0.9404673 0.4566147
6 6 1 0.0455565 0.2875775
7 7 2 0.5281055 0.7883051
8 8 3 0.8924190 0.4089769
9 9 4 0.5514350 0.8830174
10 10 5 0.4566147 0.9404673
谢谢!
【问题讨论】:
标签: r data-manipulation