我确定这是否可以在R中使用,如果有人知道如何使用其他程序执行此操作,请告诉我
目前我有一个光栅,如果没有足够大的群集,我需要将一组像素转换为NA组。我当前的思考过程是将栅格转换为多边形,然后计算多边形区域并删除多边形(如果它们不够大)。唯一的问题是rasterToPolygon
创建了单层多边形,我无法单独索引每一个多边形。有任何想法吗?这是一个例子:
library(raster)
area <- raster(matrix(c(1:4,1),5,5))
shape <- rasterToPolygons(area,fun=function(x){x == 1},dissolve=TRUE)
答案 0 :(得分:1)
溶解后,您可以再次将多部分多边形disaggregate
转换为单个部分多边形。 disaggregate
的{{1}}方法位于SpatialPolygons*
包中(如果已加载sp
,则应已加载)。
raster
多边形将具有一个属性,指示其原始栅格值的值。例如,您可以添加一个属性,为每个多边形提供唯一的ID。
library(sp)
shape2 <- disaggregate(shape)
shape2
## class : SpatialPolygonsDataFrame
## features : 2
## extent : 0, 1, 0, 1 (xmin, xmax, ymin, ymax)
## coord. ref. : NA
## variables : 1
## names : abc
## min values : 1
## max values : 1