rasterToPolygons
创建了一个large SpatialPolygonsDataFrame,其中包含NDVI之后-NDVI <0之前的所有区域。现在,我要删除面积小于某个阈值的所有多边形。但是,我找不到子集大SpatialPolygonsDataFrame的方法。我找到了一个有关如何获取面积大于阈值的多边形列表的示例(其中burned_poly
是large SpatialPolygonsDataFrame:] >>pols <- lapply(burned_poly@polygons , slot , "Polygons")
pols_areas <- lapply(pols[[2]], function(x) slot(x, "area"))
但是,像这样访问大型SpatialPolygonsDataFrame
bp <- burned_poly@polygons[[1]]@Polygons[pols_areas >= 9000]
给了我一个我目前无法强制进入SpatialPolygonsDataFrame的列表。参数感到困惑,但我不知道它在SpatialPolygonsDataFrame函数中是什么),或者可能存在其他差异更好的方法将火灾范围提取为多边形?我想计算野火的面积。我通过减去在大火之前和之后的Landsat图像上计算出的NDVI来尝试进行此操作,并查看NDVI的减少量。但是,不是...有人可以告诉我最后一步该怎么做(我对
Sf
filter()
函数的问题。请注意,您可以使用st_as_sf()