【发布时间】:2016-06-13 20:41:49
【问题描述】:
我正在使用bash 通过Rscript 传递数据,如下所示:
cat random.csv | Rscript test.R arg >| delete.csv
我的目标是使用R 包readr 来读取标准输入和写入标准输出。我找到了answer to stdin here。
test.R
#!/usr/bin/Rscript
suppressMessages(library(readr))
args <- commandArgs(trailingOnly = TRUE)
df.in <- read_csv(file("stdin"))
write_csv(df.in, path = stdout())
以上代码在命令行产生以下错误信息:
错误信息
Error in path.expand(path) : invalid 'path' argument
Calls: write_csv -> write_delim -> normalizePath -> path.expand
Execution halted
我也试过write_csv(df.in, file("stdout")) 和write_csv(df.in, stdout()) 产生同样的错误信息。
为了重现性,这里是random.csv的链接
Definition of variables, by WHO for the Global Tuberculosis Report [43kb]
【问题讨论】: