微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

并行编程多物种 GAM 循环

如何解决并行编程多物种 GAM 循环

这是我尝试使用 foreach 包执行的操作。我有 30 行(站点)和 150 列(物种)的物种数据集。

我需要为每个物种执行一个广义加性模型并提取每个模型的 R 平方。 我可以使用循环来完成,如下所示:

#sp is my species matrix
#env is my environmental matrix
library(mgcv)

r.sq <- matrix(0,ncol(sp),1)

for (i in 1:length(r.sq)) {
  gam.res <- gam(sp[,i] ~ s(V1) + s(V2),data = env,family = "binomial",method = "REML")
  r.sq[i] <- summary(gam.res)$r.sq
}

我想学习把这个循环变成并行程序,这样我的电脑的 8 个内核可以尽可能快地运行它。我必须面对更大的物种矩阵,这可能是一场噩梦。

如果你能告诉我怎么做,我将不胜感激?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。