gpt4 book ai didi

r - 如何在 "R"中的foreach循环中导出多个函数或包

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

我试图通过使用R中的doParallel包来减少代码的运行时间。

我正在调用函数awareRateSIR,该函数的主体中使用了一些额外的包。我收到一些错误,例如

could not find function "vcount" and..



我知道 vcountigraph中使用的 awareRateSIR包的功能),但它不是唯一的。我怎么解决这个问题?我以为我应该传递函数 awareRateSIR中使用的所有软件包名称,但是我不知道如何无法在 foreach中导出多个函数或如何导出多个软件包名称。

这是我的代码:
tp<-foreach(i=1:iter,  .inorder = FALSE, .export = "awareRateSIR",
.packages = "igraph", .packages="doParallel")%dopar%{
tp <- awareRateSIR(graphContact, graphCom,state)
return(tp)
}

如果我不通过这些程序包,我将得到错误状态,如果我通过所有程序包,则将出现某些功能未知的错误:

Error in foreach(i = 1:iter, .inorder = FALSE, .export = "awareRateSIR", : formal argument ".packages" matched by multiple actual arguments"



提前致谢

最佳答案

您应该使用c函数传递所需的所有软件包,如下所示:

tp<-foreach(i=1:iter,  .inorder = FALSE, .export = "awareRateSIR",
.packages = c("igraph", "doParallel"))%dopar%{
tp <- awareRateSIR(graphContact, graphCom,state)
return(tp)
}

关于r - 如何在 "R"中的foreach循环中导出多个函数或包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45750910/

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