我正在将代码从sp包迁移到较新的sf包。我之前的代码中有一个多边形SpatialDataFrame(censimentoMap)和一个SpatialPointDataFrame(indirizzi.sp),并使用下面的指令获取了放置在其中的每个点的多边形单元格ID(“ Cell110”):
points.data <- over(indirizzi.sp, censimentoMap[,"Cell110"])
实际上,我创建了两个SF对象:
shape_sf <- st_read(dsn = shape_dsn)
shape_sf <- st_transform(x=shape_sf, crs=crs_string)
和
indirizzi_sf = st_as_sf(df, coords = c("lng", "lat"), crs = crs_string)
而且我正在寻找上述说明的SF…可能是:
ids<-sapply(st_intersects(x=indirizzi_sf,y=shshape_sfpeCrif), function(z) if (length(z)==0) NA_integer_ else z[1])
cell_ids <- shape_sf[ids,"Cell110"]