我正在尝试重现此处给出的示例:
https://stat.ethz.ch/R-manual/R-devel/library/mgcv/html/mgcv-parallel.html
具体来说,在mgcv :: bam()中使用cluster =参数。
可复制的示例:
require(mgcv)
require(parallel)
k <- 13;bs <- "cr"; set.seed(9)
dat <- gamSim(1,n=6000,dist="poisson",scale=.1)
nc <- 2 ## cluster size, set for example portability
if (detectCores()>1) { ## no point otherwise
cl <- makeCluster(nc)
} else cl <- NULL
system.time(b3 <- bam(y ~ s(x0,bs=bs,k=7)+s(x1,bs=bs,k=7)+s(x2,bs=bs,k=k)
,data=dat,family=poisson(),chunk.size=5000,cluster=cl))
这会在我的计算机上导致以下错误:
checkForRemoteErrors(val)中的错误:2个节点产生了错误;第一 错误:没有适用于“预测”的对象的适用方法 类别“ gam”的时间停止在:0.31 0 0.37
其他可能有用的信息:
R version 3.4.4 (2018-03-15)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 7 x64 (build 7601) Service Pack 1
我的机器有4个内核和16 GB RAM。
谢谢。
答案 0 :(得分:0)
我无法重现错误并获得了此输出。
> b3
Family: poisson
Link function: log
Formula:
y ~ s(x0, bs = bs, k = 7) + s(x1, bs = bs, k = 7) + s(x2, bs = bs,
k = k)
Estimated degrees of freedom:
3.64 4.05 9.95 total = 18.64
fREML score: 8563.705
尝试更新软件包,看看是否有帮助。否则,更多的见解将很有用。