我试图用'_'作为分隔符将列拆分成多个列。我在这里尝试了解决方案:将不规则文本列拆分为多个列r
Splitting a dataframe string column into multiple different columns
在我的情况下,这个问题似乎是,“分隔”的文本段数跨行变化(范围为3〜5),因为我不断地得到错误每当我尝试拆分字符串,然后转换为矩阵或数据框。下面是可以复制成R的例子:
example<-structure(list(c1 = c(1, 2, 3), temp2 = structure(c(3L, 1L, 2L
), .Label = c("TR117_1119_HI_33", "TR504_1115_Su1_Y_4", "TR9_0817_2"
), class = "factor")), .Names = c("c1", "temp2"), row.names = c(NA,
-3L), class = "data.frame")
对于这个例子,最终我想“TEMP2”列在每个被parced“_”,以产生以下:
> Output
new1 new2 new3 new4 new5
1 TR9 0817 2 NA NA
2 TR117 1119 HI 33 NA
3 TR504 1115 Su1 Y 4
这是据我已经得到了,而不会在一个错误:
example$temp3<-as.character(example$temp2)
test<-strsplit(example$temp3,"_")
我需要按行用一个for循环做这行还是有一个更优雅的解决方案?