Estoy tratando de leer una tabla directamente desde una geodatabase de archivos ESRI en R. Aquí se puede descargar un archivo de datos de ejemplo . La base de datos contiene una clase de entidad de puntos (Zone9_2014_01_Broadcast) y dos tablas vinculadas (Zone9_2014_01_Vessel y Zone9_2014_01_Voyage). Puede leer el archivo de forma en R usando readOGR
el rgeos
paquete:
library(rgeos)
library(downloader)
download("https://coast.noaa.gov/htdata/CMSP/AISDataHandler/2014/01/Zone9_2014_01.zip", dest="Zone9_2014_01.zip", mode="wb")
unzip("Zone9_2014_01.zip", exdir = ".")
# Not Run (loads large point file)
# broadcast <- readOGR(dsn = "Zone9_2014_01.gdb", layer = "Zone9_2014_01_Broadcast")
Las dos tablas vinculadas también muestran cuándo usa ogrListLayers
o ogrInfo
. Sin embargo, ogrInfo
da una advertencia:
Mensaje de advertencia: En ogrInfo ("Zone9_2014_01.gdb", layer = "Zone9_2014_01_Vessel"): ogrInfo: todas las funciones NULL
Y si intentas usarlo readOGR
en las tablas, obtienes un error:
vessel <- readOGR(dsn = "Zone9_2014_01.gdb", layer = "Zone9_2014_01_Vessel")
Error en readOGR (dsn = "Zone9_2014_01.gdb", layer = "Zone9_2014_01_Vessel"): no se encontraron características Además: Mensaje de advertencia: En ogrInfo (dsn = dsn, layer = layer, codificación = codificación, use_iconv = use_iconv,: ogrInfo: todas las características NULL
Por lo tanto, parece que solo readOGR puede leer las características geográficas. ¿Hay alguna forma de importar las tablas directamente en R o es la única solución para exportarlas primero desde ArcGIS como archivos * .dbf (o * .txt) como en esta respuesta?
Además, si alguien puede proporcionar llamadas de R a un script de Python que automatice la exportación de archivos * csv (preferiblemente) o * .dbf, sería una solución aceptable. La solución solo necesita ser escalable y automatizada.
arcgisbbinding
en R. La función arc.open()
abrirá la tabla como un arc.dataset-class object
. Para abrir directamente como a data.table
, use la función arc.select
.