gpt4 book ai didi

R/Sweave 参数

转载 作者:行者123 更新时间:2023-12-04 14:49:25 24 4
gpt4 key购买 nike

我正在使用 R 和 Sweave 生成​​报告。

R CMD Sweave MyReport.Rnw



我希望能够向 R 代码发送参数,因为报告当然是 “动态” .所以,我希望能够做这样的事情:

R CMD SWeave MyReport.Rnw PatientId=5



...并让 R 代码读取 PatientId变量中的值...

我该怎么做呢?有人提到使用环境变量,但这似乎是一个不优雅的解决方案。

最佳答案

要获取从 R 命令行传递的参数,您可以使用函数 commandArgs() ,可惜R CMD Sweave不支持额外的命令行选项。但是,您仍然可以通过 R -e 调用 Sweave ,例如

R -e "Sweave('MyReport.Rnw')" --args PatientId=1

MyReport.Rnw , 你在 commandArgs(TRUE) 上做一些文本处理,它给你一个字符串 PatientId=1在这种情况下。

但我相信更好的做法是使用函数 Sweave()直接在 R 脚本中;例如在这种情况下,您可以在脚本中编写流程,例如
PatientId <- 1
Sweave("MyReport.Rnw")

并在 MyReport.Rnw您使用全局变量 PatientId直接地。如果你想生成一系列的报告,你甚至可以使用循环 for PatientId .

关于R/Sweave 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9399459/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com