如何从字符向量解析CSV数据以提取数据框?

Mat*_*ttJ 16 csv parsing r dataframe import-from-csv

R中的read.table和read.csv函数用于解析包含分隔数据的文件或URL,并生成R数据帧.但是,我已经有一个包含CSV分隔数据的字符向量(使用逗号和\n作为列和记录分隔符),因此我不需要从文件或URL中读取它.如何将此字符向量传递到read.table,read.csv或者scan()不将其写入磁盘上的文件并将其重新读入?我意识到将它写入磁盘是可能的,但我正在寻找一种不需要这种不必要的往返的解决方案,并且可以直接从字符向量中读取数据.

nei*_*fws 26

您可以使用textConnection()将字符向量传递给read.table().一个例子:

x  <- "first,second\nthird,fourth\n"
x1 <- read.table(textConnection(x), sep = ",")
# x1
     V1     V2
1 first second
2 third fourth
Run Code Online (Sandbox Code Playgroud)

R邮件列表中找到答案.

2017年编辑

七年后,我可能会这样做:

read.table(text = x, sep = ",")
Run Code Online (Sandbox Code Playgroud)