对于任何光栅数据集,我想为最大像素值分配1
,为一行中的其他值分配0
。在
我试了很多方法,但到目前为止还没有找到解决办法。在
下面是一个示例代码:
library(dplyr)
library(raster)
library(rgdal)
ras=raster("D:/Rtool/DATA/DigitalTerrainModel/SJER2013_DTM.tif")
这个光栅有5060 col and 4299 row
。我想要的是给rowMax赋值"1"
,为其他的赋值"0"
。在
我试过了:
^{pr2}$但是,对于整个光栅高程值,我只有一个最大值,这不是我想要的。在
在python上,我使用了df.eq(df.max(1), 0).astype(int)
,那么如何在R上做同样的操作呢?在
数据准备
解决方案1:此解决方案使用
^{pr2}$raster
和dplyr
包中的函数。在解决方案2:这只使用
raster
包希望这有帮助。在
顺便说一句,当你这样做的时候:
^{pr2}$最后得到一个向量(我想),这给了你问题。您也可以尝试我在上面示例中使用的值(光栅,format=“matrix”)。在
相关问题 更多 >
编程相关推荐