在R中使用Shell或管道读取csv文件的列-Windows

地亚哥

我正在寻找一种使用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()完成此操作?

谢谢,

地亚哥

G.格洛腾迪克

确保它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] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章