R计算成本和向量长度

时间:2013-12-10 03:22:21

标签: r performance computational-finance

我正在尝试使用R生成MCMC的样本,我发现了一个有趣的观点。

在每个第i步,我都按如下方式添加新样本

for(i in 1: M){
newsample=generate_sample(y.vec[i]);
y.vec[i+1]=newsample;
}

因此,我可以生成M(10 ^ 8)的长度,但需要花费很多时间,比如3天。

无意中,我将其更改为双循环语句

for(j in 1: K){
   for(i in 1: L){
   newsample=generate_sample(y.vec[i]);
   y.vec[i+1]=newsample;
   }
y.vec.total=c(y.vec.total,y.vec);
}

我原以为第二个代码效率低,但生成K * L =(10000 * 10000)样本只需1小时。

当处理相对较长的矢量时,似乎计算成本呈指数增长。

我是对的吗?

0 个答案:

没有答案