我正在寻找一种使用shell()或管道将csv文件中的几列读入R的方法。
我发现此线程说明了如何在Linux上完成该任务:读取CSV文件的单列的更快方法
在Linux上,这可以添加what参数:
a <-as.data.frame(scan(pipe("cut -f1,2 -d, Main.csv"),
what=list("character","character"),sep= ","))
但是,这似乎在Windows上不起作用。
使用pipe("cut -f1 -d, Main.csv")
连接时会打开,但不会返回任何内容。
为了在Windows上实现此功能,我需要使用什么功能/语法。
是否可以使用shell()完成此操作?
谢谢,
地亚哥
确保它cut
在您的路径上-在Rtools中。这对我有用:
# check that cut is availble
Sys.which("cut")
# create test data
Lines <- "a,b,c
1,2,3
4,5,6"
cat(Lines, file = "in.csv")
# read it
DF <- read.csv(pipe("cut -f1,2 -d, in.csv"))
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句