我不想将csv写入文件,而是要获取一个csv格式的数据框的字符串表示形式(以便通过网络发送)。我正在使用R.NET。
readr::format_csv
来处理。library(readr)
format_csv(iris[1:2, 1:3])
# [1] "Sepal.Length,Sepal.Width,Petal.Length\n5.1,3.5,1.4\n4.9,3.0,1.4\n"
如果你想要一个csv格式的单一字符串,你可以从write.csv
中获取输出。
让我们以mtcars
为例:
paste(capture.output(write.csv(mtcars)), collapse = "\n")
使用 read.csv(text = ..., row.names = 1)
可以很好地将其读取回 R。你可以在 write.csv
中进行行名和其他属性的打印调整。
write.csv
中调整这样的东西。对于行名称,设置 row.names = FALSE
就可以将它们去掉。 - Rich Scriven或者:
write.csv(mtcars, textConnection("output", "w"), row.names=FALSE)
这将在全局环境中创建变量output
并将其存储在字符向量中。
您可以执行以下操作:
paste0(output, collapse="\n")
paste0()
略快)。