Estoy trabajando con un conjunto de datos de la red de transporte y quiero importar los datos de velocidad del tráfico proporcionados en formato JSON.
Podría leer los datos en R usando read.scorata(). Sin embargo, no pude convertirlo en un marco de datos espacial para usarlo en un análisis posterior. Hay un campo en el marco de datos actual que es una polilínea codificada. ¿Cómo puedo convertir usando este campo?
library(RSocrata)
#Loading only two rows for easy reproduction
Test_TSD <- read.socrata("https://data.cityofnewyork.us/resource/i4gi-tjb9.json?borough=Manhattan&id=225")
library(googlePolylines)
puede decodificar esas polilíneas en coordenadas.
para convertir a un sf
Actualmente, el objeto requiere un par de pasos. (Hay planes para hacer esto parte de la biblioteca googlePolylines)
coords <- googlePolylines::decode( Test_TSD$encoded_poly_line )
sfg <- lapply( coords, function(x) sf::st_linestring( x = as.matrix(x) ) )
sfc <- sf::st_sfc( sfg )
sf <- sf::st_as_sf( cbind( Test_TSD, sfc ) )
Ahora tiene una característica simple (sf
) objeto. Dado sf
es el sucesor de sp
puedes parar aquí. Pero, si aún necesita el SpatialDataFrame
tu puedes hacer
sp <- as( sf, "Spatial" )
¿Alguna ayuda con la publicación?
– Mahoma
10 de agosto de 2019 a las 14:16
Este paquete puede ayudar: cran.r-project.org/web/packages/googlePolylines/vignettes/…
– Brian
20 de agosto de 2019 a las 18:48