如何循环栅格砖?

时间:2016-04-02 15:13:54

标签: raster

我有SCA的光栅砖(nrow = 108,ncol = 132,nlayers = 365),其中包含分数积雪。我想从这里制作46个叠层,每层8层,并计算这46个叠层的最大分数积雪。我怎么能这样做?

1 个答案:

答案 0 :(得分:4)

我想你可能想这样做:

library(raster)
# example data
sca <- brick(nrow=108,ncol=132,nl=365) 
values(sca) <- runif(ncell(sca)*nlayers(sca))

# indices grouping sets of 8
i <- rep(1:ceiling(365/8), each=8)
# the last period is not a complete set of 8 days
i <- i[1:nlayers(sca)]

x <- stackApply(sca, i, max)

如果你想要一个循环(但这是R,试着避免循环)你可以做

for (i in 1:nlayers(sca)) {
   x <- sca[[i]]
   # etc.
}