¿Cómo convierto un objeto sf de nuevo a un SpatialPolygonsDataFrame?
Estoy ejecutando R 3.4.0 y sf versión 0.4.1. La documentación de SF menciona una as_Spatial
función, pero esta no está disponible en mi instalación (por alguna razón).
¿Cómo convierto un objeto sf de nuevo a un SpatialPolygonsDataFrame?
Estoy ejecutando R 3.4.0 y sf versión 0.4.1. La documentación de SF menciona una as_Spatial
función, pero esta no está disponible en mi instalación (por alguna razón).
Respuestas:
solía
como indicó la parte 2 de la viñeta de Edzer Pebesma (Desplácese hasta el final de la página).
fuente
tmp <-as(nc, 'Spatial')
, a continuación,tmpid <- sapply(slot(tmp, "polygons"), function(x) slot(x, "ID"))
a continuación,row.names(tmp) <- tmpid
Tuve que usar
sf:::as_Spatial()
como solución alternativa.fuente
as(sf, "Spatial")
por @mdsumner, confirmo que produce SpatialPolygonsDataFrame, que es mejor para sus necesidades. Parece que soloas_Spatial()
necesita sfc (es decir, geometría).