如何找到多个栅格的像素最大值?

时间:2015-11-13 18:38:37

标签: r spatial raster

我有数百个具有相同分辨率和范围的栅格。这是一个时间序列,每个栅格代表一个时间点。

我知道如何在栅格中找到绝对最大值。

但是如何在整个时间序列的栅格中找到每个单元格中的最大值?

如果a1,a2,...... a1000是栅格,我想创建一个栅格x,其中每个像素是a1-a1000所有相应像素的最大值。

1 个答案:

答案 0 :(得分:2)

如果您首先将栅格放入堆叠中,则只需将min()max()应用于堆栈,即可获得RasterLayer >

## Example rasters and stack
r1 <- raster(matrix(1:4,ncol=4))
r2 <- -2*r1
r3 <- 2*r1
rr <- list(r1,r2,r3)
s <- stack(rr)

## Extract the pixel-wise min and max values
min(s)
max(s)

(要应用一些其他,更复杂的函数,它会为堆栈中的每个像素返回一个标量,您可能需要使用calc(),如所示(例如){{3 }}。)