我正在尝试创建一个新变量并将其附加到数据集中,该数据集的值将来自匹配另一个数据集的变量值。
例如
data set 1
A B
1 a
2 b
3 c
data set 2
A
1
2
3
1
3
2
我希望我的结果看起来像
data set 2
A B
1 a
2 b
3 c
1 a
3 c
2 b
我尝试使用以下"匹配"函数来获得结果
data set 2$B <- data set 1$B[match(data set 1$A, data set 2$A)]
但它抛出的错误是
incorrect number of dimensions
如何处理?请注意,我不想合并两个数据集,因为数据集2包含数百个或其他变量。
还提出了处理尺寸误差的问题。
谢谢,Mrinal
答案 0 :(得分:0)
您的数据:
df1 <- data.frame(A=1:3,B=letters[1:3])
df2 <- data.frame(A= c(1:3, c(1,3,2)))
使用match
:
df2$B <- df1$B[match(df2$A,df1$A)]
df2
A B
1 1 a
2 2 b
3 3 c
4 1 a
5 3 c
6 2 b