我有一个带有因子变量的数据框 (x),该变量的值由逗号分隔。我有另一个数据框 (y),其中包含对相同值的描述。现在我想用数据框 (y) 中的描述替换数据框 (x) 中的值。任何帮助将不胜感激。
例如,两个数据框如下所示
data frame (x)
s.no x
1 2,5,45
2 35,5
3 45
data fram (y)
s.no x description
1 2 a
2 5 b
3 45 c
4 35 d
我需要如下输出
s.no x
1 a,b,c
2 d,b
c c
最佳答案
使用splitstackshape
:
library(splitstackshape)
cSplit(x, 'x', ',', 'long')[setDT(y), on='x'][,.(x=paste(description, collapse=',')), s.no]
# s.no x
#1: 1 a,b,c
#2: 2 b,d
#3: 3 c
关于替换其他数据框的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36834074/