我有一個數據框,其中一列是列表。我想將其鑄造成一個整體的數據幀:將具有列表類型列的數據幀轉換爲平坦數據幀
df=data.frame(col1=c(LETTERS[1:3]),col2=c('X,Y,Z','W,V','U'))
> df
col1 col2
1 A X,Y,Z
2 B W,V
3 C U
>
而想要使另一數據幀爲了便於觀察和進一步加工,如:
> data.frame(col1=c('A','A','A','B','B','C'),col2=LETTERS[26:21])
col1 col2
1 A Z
2 A Y
3 A X
4 B W
5 B V
6 C U
>
在COL2值的數量從變化1到5在我的真實數據集。目前,我已經試過
library(stringr)
> str_split(df[,2],',')
[[1]]
[1] "X" "Y" "Z"
[[2]]
[1] "W" "V"
[[3]]
[1] "U"
和
> unlist(str_split(df[,2],','))
[1] "X" "Y" "Z" "W" "V" "U"
但我不知道如何進行每個COL2價值與它的正確的col1值與鏈接
此外[在列中分隔分隔字符串並插入爲新行](http://stackoverflow.com/questions/1 5347282/split-delimited-strings-in-a-column-and-insert-as-new-rows) –