有没有办法以编程方式将R源代码保存到文件中?

时间:2019-05-20 00:25:36

标签: r save

我确定这个问题已经回答,但是我在搜索错误的术语。我有许多R脚本,这些脚本可让我手动输入各种参数,运行代码并将结果保存到唯一目录。每次运行代码时,我都会输入不同的参数。我想同时记录参数和结果,但是我不想为每个参数都运行saveRDSwriteLines。由于参数通常是我在脚本顶部手动输入的文本值,例如search_term = "transcription"只需将源代码的文本保存到唯一的目录中就可以完成此工作(这也使我可以回头查看源代码中破坏/修复了代码的任何细微调整)。

更多搜索显示rstudioapi::getSourceEditorContext()$path,这为我提供了源代码文件的路径。然后,我可以使用file.copy将源复制到唯一目录。但是我必须记住在运行源程序之前先保存它,否则它将是保存的旧版本。所以我想问题的第二部分是,有没有办法从同一脚本中以编程方式保存脚本?

谢谢。

1 个答案:

答案 0 :(得分:1)

假设您正在RStudio中工作,则可以使用rstudioapi::documentSave。这是一个例子

library(rstudioapi)
version = 1
documentSave(getActiveDocumentContext())