Formato JSON en R
El formato JSON permite expresar datos jerarquizados (ramificados) de forma arbitraria, como las listas de R.
- Considera el siguiente ejemplo de datos en formato JSON
inspirado en https://docs.mongodb.com/manual/tutorial/query-documents/
[ { item: "journal", qty: 25, size: { s: 320, uom: "cc" }, status: "A" }, { item: "notebook", qty: 50, size: { h: 8.5, w: 11, uom: "in" }, status: "A" }, { item: "paper", qty: 100, size: { h: 8.5, w: 11, uom: "in" }, status: "D" }, { item: "planner", qty: 75, size: { h: 22.85, w: 30, uom: "cm" }, status: "D" }, { item: "postcard", qty: 45, size: { h: 10, w: 15.25, uom: "cm" }, status: "A" } ];
Crea mediante
list
un objeto en R que tenga esa misma estructura (sin cargar bibliotecas adicionales). - Desde R, guarda el objeto creado en el ejercicio anterior en un fichero de texto con formato JSON
(cargando previamente la biblioteca
jsonlite
). - Sal de R, vuelve a entrar en R e importa el contendo del fichero creado en el ejercicio anterior.
- El dataframe obtenido a partir del JSON anterior (
dj
) tiene una estructura poco habitual porque- Tiene un dataframe anidado:
dim (dj) dj$size
- Sus columnas son listas en lugar de vectores homogéneos:
dj$item class (dj$item)
Trasforma el dataframe en un dataframe habitual.
- Tiene un dataframe anidado:
- Descargar los datos de trayectos de buses de Gijón (también aquí y en Bellman)
- Cargar esos datos en R
- Hallar las longitudes de los trayectos de cada línea a partir de las coordenadas UTM y guardar los resultados en una lista.
- Conserva el resultado en un fichero JSON.
- Carga en R los estos datos del servicio de empleo, en los que la situación
laboral se codifica como: 1=ocupado, 2=parado.
Calcula, para cada individuo, el número de días que ha estado ocupado, suponiendo lo siguiente:
- Si la situación laboral última es 1, ha estado ocupado desde entonces hasta la actualidad.
- De la lista de chequeos históricos en la oficina del INEM, si la situación laboral es 1 se considera que ha estado ocupado hasta el siguiente chequeo.
- Si en el último chequeo histórico la situación laboral es 1, ha estado ocupado desde ese chequeo hasta la situación laboral última.