我想循环超过116组(i)进行以下操作:
r<- foreach(i=unique(Error$scidx),.combine = c) %dopar% {
numerator=sum(P1new[Error$scidx==i])+sum(P2new[DATA$scid==i])
denominator=sum(P1old[Error$scidx==i])+sum(P2old[DATA$scid==i])
probab=exp(numerator-denominator)
if (runif(1)<probab){
Change=1
} else{
Change=0
}
list(i,Change)
}
我要求4个内核,每次运行需要很长时间。我怀疑这是因为数据Error,P1new,P1old包含700,000个观测值。这是真的吗?有什么方法可以加快这个过程吗?或者,我的代码有问题?
感谢。