我有兩個data.frames看起來像這些的:匹配值與值dataframes一列
>df1
V1
a
b
c
d
e
>df2
V1 V2
1 a,k,l
2 c,m,n
3 z,b,s
4 l,m,e
5 t,r,d
我想從df2$V2
在df1$V1
與匹配的值,並添加一個新列df1
對應的匹配和的df2$V1
值時,輸出的願望是:
>df1
V1 V2
a 1
b 3
c 2
d 5
e 4
我試過這種方法,但只有工作,如果df2$V2
只包含一個元素:
match(as.character(df1[,1]), strsplit(as.character(df2[,2], ",")) -> idx
df1$V2 <- df2[idx,1]
非常感謝
如果在「df2 $ V2」中多次出現「a」會怎麼樣?結果應該是什麼? – A5C1D2H2I1M1N2O1R2T1
感謝評論@AnandaMahto,'df1 $ V1'中的值只會在'df2 $ V2'中出現一次,但如果有任何重複,那麼用冒號「,」分隔的兩個值將是完美的 – user2380782