我有一个数据框,其中包含一列ID和一列连续的字符串,每行包含1-3个元素。我需要分离字符串字段并取消结果,以便我留下两列,一列具有非唯一ID,另一列具有每个都有一个元素的字符串。以下是一些示例数据:
startdata <- data.frame(IDs = c(1,2,3), TextField = c("abc", "def & ghi", "jkl & mno & pqr"), stringsAsFactors = FALSE)
所以它看起来像这样:
IDs TextField
1 1 abc
2 2 def & ghi
3 3 jkl & mno & pqr
最后,我需要它看起来像这样:
IDs TextField
1 1 abc
2 2 def
3 2 ghi
4 3 jkl
5 3 mno
6 3 pqr
我可以使用strsplit将它们分成如下列表:
> strsplit(startdata$TextField, " & ")
[[1]]
[1] "abc"
[[2]]
[1] "def" "ghi"
[[3]]
[1] "jkl" "mno" "pqr"
但我被卡在那里。
我尽可能地坚持使用默认库,但如果不同的库可以更好地完成,请随时告诉我。