在R中,可以使用max/min命令轻松计算地理参照栅格堆栈中每个单元格的最大/最小值。在R中的栅格堆栈中找到第二高值R
set.seed(42)
require(raster)
r1 <- raster(nrows=10, ncols=10)
r2=r3=r4=r1
r1[]= runif(ncell(r1))
r2[]= runif(ncell(r1))+0.2
r3[]= runif(ncell(r1))-0.2
r4[]= runif(ncell(r1))
rs=stack(r1,r2,r3,r4)
plot(rs)
max(rs)
min(rs)
但是,我一直在试图找到一种方法来查找堆栈中第二高的值。就我而言,堆栈中的每个栅格表示特定模型在空间中的表现。我想比较第一和第二最佳值,以确定亚军的最佳模型,而不必将我的堆栈转换为矩阵,然后重新转换为栅格,从而获得最佳模型。任何想法或建议?
'最大(RS [RS
不幸的是,由于r没有定义的方法来使用您建议的语法对栈进行子集化,所以不起作用:'rs [rs
是的,对不起 - 你必须对堆栈的属性进行一些强制操作。 –