【发布时间】:2019-09-21 03:59:31
【问题描述】:
我想为栅格砖的每个单元(+50 层,70,000,000 个单元)计算几个统计数据,例如中位数。这段小代码正在运行,但速度非常慢......:
r <- raster(ncol=3000, nrow=2000)
r[] <- rnorm(n=ncell(r))
s <- stack(x=c(r, r*2, r))
file <- brick(x=c(r, r*2, r))
q25 <- file[[1]]
i=0
for(i in 1:ncell(file)){
progress(i, max.value = ncell(file))
q25[i] <- unname(quantile(file[i],.5,na.rm=TRUE))
}
q25 是一个栅格层(与“文件”完全相同),但只有一个层(不是砖)。
如果有任何关于如何加快速度的建议,我会很高兴。
谢谢!
【问题讨论】:
-
你能展示一个可复制的小例子供其他人测试吗
-
谢谢,我刚刚添加了一个可重现的光栅砖。请注意,我的砖块有更多的单元格。
标签: r loops statistics raster