无法将空间数据框输出到.shp

我已经使用gConvexHull()创建了一个归类为SP polygon的home range多边形。为了输出为.shp文件,我将其转换为SpatialPolygonsDataFrame,它的新类是"sf" "data.frame"

但是当我尝试使用writeOGR()输出它时,它出现了错误消息:

Error in writeOGR(obj = HRDF, dsn = "C:/Users/RKirton/Documents/Data files",  : 
  inherits(obj, "Spatial") is not TRUE 

我还尝试了st_write(),并得到了这个新的错误消息:

Error in CPL_write_ogr(obj, dsn, layer, driver, as.character(dataset_options),  : 
  argument dsn, layer or driver not of length 1. 

我是R的新手,不确定如何解决这些错误消息。

下面是我的代码:

for(i in 1:length(unique(mydata$ID))) {
  hunt <- mydata[which(mydata$Season2 == "Hunt" & mydata$ID == 
  unique(mydata$ID)[i]), ]
  hunt_spdf <- SpatialPointsDataFrame(coords = cbind(hunt$X, hunt$Y), data = 
  hunt, proj4string = CRS("+init=epsg:32614"))
  HR = gConvexHull(hunt_spdf, byid = FALSE)
  plot(hunt_spdf)
  plot(HR, add = TRUE)
  HRDF = SpatialPolygonsDataFrame(HR, data = data.frame(IDs="Deer_HHR"))
  HRDF = st_as_sf(HR)
  HRDF
  HRDF$NEWCOL = "ID"
  HRDF
  st_write(obj = HRDF, dsn="C:/Users/RKirton/Documents/Data files", 
  layer=paste0('DeerHHR_', hunt$ID), driver="ESRI Shapefile")
  }

转载请注明出处:http://www.932981.com/article/20230526/1530292.html