gpt4 book ai didi

r - 无法从 Rscript 批处理文件调用 roxygenize 函数

转载 作者:行者123 更新时间:2023-12-04 10:14:55 26 4
gpt4 key购买 nike

我正在编写一个使用 roxygen2 自动对我的包进行 roxygenize 的脚本。我希望它是可执行的,以便它可以成为准备和安装包的更大脚本的一部分,但由于某种原因我无法使其与 Rscript 一起使用。

这是代码:

#!/usr/bin/env Rscript
library(roxygen2)
roxygenize('.', copy=FALSE)

如果我启动交互式 R session 或使用 R CMD BATCH 提交代码,这将正常工作。但是,如果我通过 Rscript 直接将脚本作为可执行文件运行,我会得到这个输出和错误(无论脚本是在当前目录还是 bin 中,我都会得到错误)。
bin/roxygenize.R 
Loading required package: digest
Warning message:
package 'roxygen2' was built under R version 2.13.2
Error in parse.files(r_files) : could not find function "setPackageName"
Calls: roxygenize -> parse.files
Execution halted

看起来 setPackageName 在基础 R 中,所以我不知道为什么它不在那里。此外,我在许多其他情况下使用 Rscript,这似乎是它唯一失败的地方。

任何帮助深表感谢。

最佳答案

显式加载包 methodsutils加载前 roxygen2并调用 roxygenize() .

#!/usr/bin/env Rscript
library(methods)
library(utils)
library(roxygen2)
roxygenize('.', copy=FALSE)

关于r - 无法从 Rscript 批处理文件调用 roxygenize 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8964515/

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