gpt4 book ai didi

R 包设计 : how to export internal functions to a cluster

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

我正在处理一个 R 包,我需要运行一个函数 myfun在集群上使用 parallel::parLapply . myfun从我的包中调用几个额外的函数,这些函数又调用了更多的函数,其中一些函数有多个方法......所以按名称将所有函数和方法显式传递给集群是非常麻烦的。
standard advice ,据我所知,是运行parallel::clusterEvalQ({library("my_package")}) .但是拨打library("my_package")显然讨厌 R-CMD 检查。我有理由相信 my-package:::function也不会在 CRAN 上飞行。
这里的标准方法是什么?我是否需要按名称导出每个相关的函数和方法?

最佳答案

好的,这似乎有效,(它通过了 GitHub 上的 R-CMD 检查):

parallel::clusterExport(cl = cl, 
unclass(lsf.str(envir = asNamespace("my_package"),
all = T)),
envir = as.environment(asNamespace("my_package"))
)
希望对其他人有用。
通过 globals 可能还有一个不错的解决方案。包,但我一直无法通过对 GitHub 操作的检查。

关于R 包设计 : how to export internal functions to a cluster,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67595111/

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