2016-04-02 28 views
0

我有一個SCA的柵格磚(nrow = 108,ncol = 132,nlayers = 365),它包含部分積雪。我想從這8層中製作46層疊層,並計算這46層疊層的最大分數積雪。我該怎麼做?如何通過柵格磚循環?

回答

3

我想你可能會想要做的是這樣的:

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. 
}