2015-11-13 188 views
0

我有数百个具有相同分辨率和范围的栅格。这是一个时间序列,每个栅格代表一个时间点。如何查找多个栅格的像素最大值?

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

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

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

+0

查看'?pmax'。尝试例如'pmax(a1 [],a2 [],...)'',其中'a1','a2'等是您的'栅格'对象。 – nicola

回答

1

如果首先把光栅在堆栈中,你就可以简单地套用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(),如演示(例如)here。)

+0

谢谢!我之前正在使用maxValue。 :) – maximusdooku

+0

我有一个后续问题,如果你不介意:http://stackoverflow.com/questions/33700755/how-can-i-find-the-pixel-wise-standard-deviation – maximusdooku