我正在使用 rmarkdown 执行 5 个主要步骤:阅读、清理、转换、分析和即。
我的计划是将每个步骤的代码分成一个或两个降价文件(.Rmd)。每个后续的 .Rmd 都将作为外部文件调用到下一个 .Rmd 中(即我想将每个步骤的 .Rmd 嵌套到下一个步骤中)。
我通过替换嵌套 .Rmd 文件:
knitr::opts_chunk$set(echo = TRUE)
和:
knitr::knit("**ABSOLUTE PATH TO PREVIOUS .Rmd FILE**")
这一直有效,直到我的第 3 次嵌套,当我在knitr::knit行出现错误时:
Error in file(file, "rt" ) Cannot open the connection calls: <Anonymous> … withVisible ->eval ->eval -> read.csv ->read.table -> file
注意:每次我引用任何东西都是用绝对路径完成的,所以这不应该是问题。
谁能指出我将 .Rmd 嵌套到彼此中的正确方法?
最后,如果这个工作流程看起来很野蛮,我欢迎任何其他关于架构的建议!我嵌套的原因(而不是把所有东西都放在一个大的 R Notebook 中)是:
- 我想在 .Rmd 'pages' 中工作,以便拥有需要滚动浏览的代码更少的单独选项卡(并且可能会意外搞砸)。
- 我可以将数据从一个步骤传递到另一个步骤,而不会浪费时间将其写入磁盘的某个位置。(基本上我希望能够评估和使用之前 .Rmd 的结果)
- 我可以为流程的每个步骤制作一个干净的 html 或 pdf 页面。