0
这的快速索引是我与战斗中的R多维数组又迈进了一步,先前的问题是here :)智能和多维数组有R
我有以下尺寸的大R数组:
> data = array(..., dim = c(x, y, N, value))
我想执行与获得一种引导比较平均(见here了一个关于它的讨论):
> vmean = apply(data, c(1,2,3), mean)
随着取代N
值随机取代的平均值,以更好地解释如果data[1,1,,1]
等于[v1 v2 v3 ... vN]我想用[v_k1 v_k2 v_k3 ... v_kN]之类的东西替换它采用sample(N, N, replace = T)
采样的k值。
当然我想避免for
循环。我读过this,但我不知道如何执行此数组的有效索引,避免通过x
和y
循环。
任何想法?
UPDATE:这里最重要的是,我想在第四(值)维每个样本不同的样本,否则这将是简单的做一些事情,如:
> dataSample = data[,,sample(N, N, replace = T), ]
“for loops比* apply更糟糕”是城市的传奇。所以你可能只想用'for(j in 1:{value of N})mean(data [,, j,])''当然有你想要的任何类型的替换指令添加到循环中。 –
事实上,我正在寻找矢量化的解决方案,像http://cran.r-project.org/doc/manuals/R-intro.html#Array-indexing –
好吧,我会看看我可以喝什么。或者看看'vectorize()'是否足够快。 –