使用传递文件的 a.R 在命令行上调用 RMarkdown
Posted
技术标签:
【中文标题】使用传递文件的 a.R 在命令行上调用 RMarkdown【英文标题】:call RMarkdown on command line using a.R that is passed a file 【发布时间】:2015-04-14 23:20:42 【问题描述】:总之,我在 RStudio 中的“input_file1.txt”上使用我的脚本“Graphs.R”来创建一个 Rmd,然后我将它编织成 html。我想自动化这个过程以在命令行上运行更多文件。
到目前为止,我可以使用以下命令在命令行上运行 Rscript:
Rscript Graphs.R input_file1.txt
我也知道我可以使用以下方法创建一个 .RMD 文件:
Rscript -e rmarkdown::render(Graphs.R)
但是,我想做以下事情:
Rscript -e rmarkdown::render('Graphs.R input_file1.txt', 'output_file.Rmd')
有什么想法可以做到这一点吗?
【问题讨论】:
不清楚您要做什么。第一个脚本的结果是什么? Graphs.R 在 'input_file1.txt' 中创建表格和数据图表,例如 kable(df) 和一些插入表格的条形图以提供数据的汇总统计信息。 【参考方案1】:目前还不完全清楚您要做什么。似乎您有一个文本文件,必须通过 R 脚本将其转换为 Rmd(为什么它不只是一个 Rmd 开始?),然后您想要渲染 Rmd。您可以通过在终端中运行以下命令来执行此操作:
Rscript Graphs.R
Rscript -e "rmarkdown::render('output_file.Rmd')"
第一个命令运行Graphs.R
文件,该文件可能会生成output_file.Rmd
。第二个命令运行一个将output_file.Rmd
编织成output_file.html
的单线。
如果您想读取 R 文件中的命令行参数,请尝试 ?commandArgs
。
args <- commandArgs(trailingOnly = TRUE)
另见Stack Overflow question。
【讨论】:
以上是关于使用传递文件的 a.R 在命令行上调用 RMarkdown的主要内容,如果未能解决你的问题,请参考以下文章
无法在 Python 3.8.0 的命令行上运行 python 文件;它改为调用 python 解释器
函数内部 sed 命令中的 bash 语法错误,在命令行上工作正常