我在R中有一个像这样的字符串向量 C(' A,B,C,d'' C,d,E'' d,C'' A,B,d& #39) 我必须将它转换为数据框,如下所示。 请注意,字符串可能会有不同的长度。所以在d&之后的第3行c第3栏和第3栏下应该有空白。 4
a b c d
c d e
d c
a b d
答案 0 :(得分:3)
我们将,
拆分为list
,在末尾添加NA
,以便那些元素较少并转换为data.frame
lst <- strsplit(v1, ",")
out <- do.call(rbind.data.frame, lapply(lst, `length<-`, max(lengths(lst))))
colnames(out) <- paste0("V", seq_along(out))
out <- sapply(out, as.character)
out[is.na(out)] <- ""
out
答案 1 :(得分:2)
在最后的注释中使用测试输入。
read.table(text = x, sep = ",", fill = TRUE, as.is = TRUE)
,并提供:
V1 V2 V3 V4
1 a b c d
2 c d e
3 d c
4 a b d
测试输入
x <- c('a,b,c,d','c,d,e','d,c','a,b,d')
答案 2 :(得分:0)
非常简单。使用以下
test <- c('a,b,c,d','c,d,e','d,c','a,b,d')
data_frame <- data.frame(test)
data_frame