在R中分隔字符串和重复行

时间:2017-02-20 22:40:52

标签: r

我有一个数据框,其中包含一列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"

但我被卡在那里。

我尽可能地坚持使用默认库,但如果不同的库可以更好地完成,请随时告诉我。

0 个答案:

没有答案