如果我有一个类似于x <- c("Name,Age,Gender", "Rob,21,M", "Matt,30,M")
的列表,我该如何转换为Name
,Age
和Gender
成为列标题的数据框。
目前我的方法是,
dataframe <- data.frame(matrix(unlist(x), nrow=3, byrow=T))
给了我
matrix.unlist.user_data...nrow...num_rows..byrow...T.
1 Name,Age,Gender
2 Rob,21,M
3 Matt,30,M
并没有帮助我。
如何从上述列表中获得类似于以下内容的内容?
+---------------------------------------------+
| name | age | gender |
| | | |
+---------------------------------------------+
| | | |
| | | |
| ... | ... | ... |
| | | |
| | | ++
+---------------------------------------------+
| | | |
| ... | ... | ... |
| | | |
| | | |
+---------------------------------------------+
答案 0 :(得分:4)
我们paste
将字符串合并为\n
的单个字符串,然后使用read.csv
中的read.table
或base R
read.table(text=paste(x, collapse='\n'), header = TRUE, stringsAsFactors = FALSE, sep=',')
答案 1 :(得分:4)
可替换地,
data.table::fread(paste(x, collapse = "\n"))
Name Age Gender 1: Rob 21 M 2: Matt 30 M