library(tidyverse)
## -- Attaching packages --------------------------------------- tidyverse 1.3.1 --
## v ggplot2 3.3.5 v purrr 0.3.4
## v tibble 3.1.4 v dplyr 1.0.7
## v tidyr 1.1.3 v stringr 1.4.0
## v readr 2.0.1 v forcats 0.5.1
## -- Conflicts ------------------------------------------ tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag() masks stats::lag()
library(sf)
## Linking to GEOS 3.9.0, GDAL 3.2.1, PROJ 7.2.1
barrios_caba <- read.csv("barrios_caba.csv", stringsAsFactors = TRUE)
A partir del dataset csv, se identifican 48 observaciones/filas y 5 variables, donde se observa que los 48 barrios de CABA, estan repartidos en 15 comunas, el perimetro y area promedio de los barrios, es de 9863 y 4242703 respectivamente.
class(barrios_caba$comuna)
## [1] "integer"
barrios_caba <- barrios_caba %>%
mutate(comuna=as.character(comuna))
class(barrios_caba$comuna)
## [1] "character"
Ahora, si ya tenemos la variable “comuna” como character, por si más adelante necesitamos hacer el left_join.
partidos_censo <- read.csv("partidos_censo2010.csv", stringsAsFactors = TRUE)
summary(partidos_censo)
## codigo nombre provincia pob_2010
## Min. :2001 Almirante Brown: 1 CABA:15 Min. : 56729
## 1st Qu.:2013 Avellaneda : 1 GBA :33 1st Qu.: 174013
## Median :6319 Berazategui : 1 Median : 223281
## Mean :5075 Berisso : 1 Mean : 301108
## 3rd Qu.:6544 Comuna 1 : 1 3rd Qu.: 340723
## Max. :6861 Comuna 10 : 1 Max. :1775816
## (Other) :42
## viv_2010 hog_2010
## Min. : 19287 Min. : 17116
## 1st Qu.: 64864 1st Qu.: 59537
## Median : 93389 Median : 81055
## Mean :104104 Mean : 95612
## 3rd Qu.:123359 3rd Qu.:109566
## Max. :447306 Max. :484909
##
Donde identificamos en la base de datos, 48 observaciones, refiriendose a los 48 partidos censados en el 2010, comoparte del AMBA, y 6 variables/columnas: código, nombre de los partidos, provincia (si los partidos son de CABA o de GBA), cantidad de población, viviendas y hogares, en el 2010. Información del INDEC.
class(partidos_censo)
## [1] "data.frame"
class(partidos_censo$pob_2010)
## [1] "integer"
Pasamos el pob_2010 a character
mutate(partidos_censo)%>%
mutate(pob_2010=as.character(pob_2010))
## codigo nombre provincia pob_2010 viv_2010 hog_2010
## 1 6028 Almirante Brown GBA 552902 156204 156918
## 2 6035 Avellaneda GBA 342677 121292 113142
## 3 6091 Berazategui GBA 324244 96025 93164
## 4 6098 Berisso GBA 88470 29507 27449
## 5 2001 Comuna 1 CABA 205886 130771 84468
## 6 2010 Comuna 10 CABA 166022 107967 61453
## 7 2011 Comuna 11 CABA 189832 101161 71460
## 8 2012 Comuna 12 CABA 200116 82926 78547
## 9 2013 Comuna 13 CABA 231331 92750 100506
## 10 2014 Comuna 14 CABA 225970 93368 102918
## 11 2015 Comuna 15 CABA 182574 89520 72465
## 12 2002 Comuna 2 CABA 157932 55377 73156
## 13 2003 Comuna 3 CABA 187537 63322 80489
## 14 2004 Comuna 4 CABA 218245 71572 76455
## 15 2005 Comuna 5 CABA 179005 84649 76846
## 16 2006 Comuna 6 CABA 176076 93409 75189
## 17 2007 Comuna 7 CABA 220591 129633 81483
## 18 2008 Comuna 8 CABA 187237 141222 58204
## 19 2009 Comuna 9 CABA 161797 86326 56495
## 20 6245 Ensenada GBA 56729 19343 17443
## 21 6252 Escobar GBA 213619 65378 59981
## 22 6260 Esteban Echeverría GBA 300959 88153 85952
## 23 6270 Ezeiza GBA 163722 49204 44487
## 24 6274 Florencio Varela GBA 426005 113989 113135
## 25 6364 General Rodríguez GBA 87185 29309 24926
## 26 6371 General San Martín GBA 414196 138011 133202
## 27 6408 Hurlingham GBA 181241 55440 55122
## 28 6410 Ituzaingó GBA 167824 54363 51444
## 29 6412 José C. Paz GBA 265981 72231 71722
## 30 6427 La Matanza GBA 1775816 447306 484909
## 31 6441 La Plata GBA 654324 259352 221313
## 32 6434 Lanús GBA 459263 157867 149594
## 33 6490 Lomas de Zamora GBA 616279 188186 188844
## 34 6497 Luján GBA 106273 37527 32524
## 35 6515 Malvinas Argentinas GBA 322375 87283 89338
## 36 6539 Merlo GBA 528494 147221 147716
## 37 6560 Moreno GBA 452505 129560 124016
## 38 6568 Morón GBA 321109 117303 106902
## 39 6638 Pilar GBA 299077 93531 82671
## 40 6648 Presidente Perón GBA 81141 22499 21422
## 41 6658 Quilmes GBA 582943 182216 177110
## 42 6749 San Fernando GBA 163240 51910 49384
## 43 6756 San Isidro GBA 292878 107600 97213
## 44 6760 San Miguel GBA 276190 82879 80627
## 45 6778 San Vicente GBA 59478 19287 17116
## 46 6805 Tigre GBA 376381 118416 108558
## 47 6840 Tres de Febrero GBA 340071 119907 112588
## 48 6861 Vicente López GBA 269420 114728 99286
Despues cargamos los datasets con información geográfica:
partidos_amba <- st_read("partidos_amba.geojson")
## Reading layer `amba_partidos' from data source
## `C:\CienciaDatos\Tarea2\Tarea2_Mapas\partidos_amba.geojson'
## using driver `GeoJSON'
## Simple feature collection with 48 features and 2 fields
## Geometry type: MULTIPOLYGON
## Dimension: XY
## Bounding box: xmin: -59.3392 ymin: -35.23893 xmax: -57.70946 ymax: -34.23007
## Geodetic CRS: WGS 84
summary(partidos_amba)
## nombre area_km2 geometry
## Length:48 Min. : 6.30 MULTIPOLYGON :48
## Class :character 1st Qu.: 17.72 epsg:4326 : 0
## Mode :character Median : 55.91 +proj=long...: 0
## Mean :140.59
## 3rd Qu.:177.07
## Max. :889.49
El resumen nos indica que es geoespacial, por la variable geometry. Tiene información de área por km2, y los nombres de los 48 partidos de AMBA.
class(partidos_amba)
## [1] "sf" "data.frame"
lineas_ffcc <- st_read("lineas_ffcc.geojson")
## Reading layer `lineas_ffcc' from data source
## `C:\CienciaDatos\Tarea2\Tarea2_Mapas\lineas_ffcc.geojson' using driver `GeoJSON'
## Simple feature collection with 23 features and 5 fields
## Geometry type: MULTILINESTRING
## Dimension: XY
## Bounding box: xmin: -59.2763 ymin: -34.98144 xmax: -57.94964 ymax: -34.2941
## Geodetic CRS: WGS 84
summary(lineas_ffcc)
## CONSESION DESCRIPCIO IDLINEA TROCHA
## Length:23 Length:23 Length:23 Min. :1000
## Class :character Class :character Class :character 1st Qu.:1676
## Mode :character Mode :character Mode :character Median :1676
## Mean :1567
## 3rd Qu.:1676
## Max. :1676
## LINEA geometry
## Length:23 MULTILINESTRING:23
## Class :character epsg:4326 : 0
## Mode :character +proj=long... : 0
##
##
##
A partir del dataset de Lineas de Ferrocarril, se observa que hay 23 observaciones/filas (es decir 23 líneas con sus ramales) y 6 variables. Una de las 6 variables es geometry, indicando que es un datset geoespacial. La información es proveniente de la fuente del Ministerio de Transporte de Nación.
class(lineas_ffcc)
## [1] "sf" "data.frame"
1.a. Mapa coroplético que muestre la distribución geográfica de una variable numérica.
En este caso mapeamos el dataset de Partidos AMBA, y rellenamos por la variable AREA_KM2
ggplot()+
geom_sf(data=partidos_amba, aes(fill=area_km2))
El mapa nos muestra que los partidos de mayor superficie son aquellos más alejados del centro del mapa, es decir de CABA, donde se encuentran los partidos de menor tamaño.
Realizamos otro mapa coroplético a partir del dataset de Lineas de Ferrocarril, seleccionando la variable numérica: TROCHA.
ggplot()+
geom_sf(data=lineas_ffcc, aes(color=as.factor(TROCHA)), size=1.25)+
labs(title = "Líneas de Ferrocarril", caption = "Fuente: Ministerio de Transporte", color= "Trocha")
Unimos datasets por columna: a partidos_amba (geoespacial) le agregamos informacion de partidos_censo (csv)
partidos_amba <- left_join(partidos_amba, partidos_censo, by="nombre")
Ahora partidos_amba tiene la informacion de partidos_censo!
HACEMOS UN MAPA, mas interesante:
ggplot()+
geom_sf(data = partidos_amba, aes(fill=hog_2010), color="grey")+
geom_sf_text(data= partidos_amba %>% filter(provincia=="GBA"), aes(label=nombre), size=2, color="white")+
labs(title = "CANTIDAD DE HOGARES EN AMBA", subtitle="Censo 2010", fill="Cantidad de Hogares", caption="Fuente: Censo 2010, INDEC")+
scale_fill_viridis_b()+
theme_bw()
## Warning in st_point_on_surface.sfc(sf::st_zm(x)): st_point_on_surface may not
## give correct results for longitude/latitude data
Este mata nos muestra la cantidad de hogares censados en el 2010, segun partido del AMBA correspondiente.
1.b. Mapa coroplético que muestre la distribución geográfica de una variable categórica.
En PARTIDOS AMBA vamos a representar los partidos que tengan poblacion mayor o igual a 1.000.000 habitantes
partidos_amba <- partidos_amba %>%
mutate(CATEGORIA=as.factor(if_else(pob_2010>=1000000, "Más de 1 Millón", "Menos de 1 Millón")))
Vemos en el dataset con la columna nueva de “CATEGORIA” que sólo 1 de los partidos cumple con esa condición. Vamos a mapearlo:
ggplot()+
geom_sf(data=partidos_amba, aes(fill=CATEGORIA), color="black")+
labs(title="POBLACIÓN TOTAL AMBA", subtitle="Censo 2010", caption = "Fuente: INDEC", fill="población")+
scale_fill_manual(values=c("violet", "pink"))
Agregamos otra CATEGORIA 2 sobre el ÁREA
partidos_amba <- partidos_amba %>%
mutate(CATEGORIA2=as.factor(if_else(area_km2>=100, "Mayor a 100", "Menor a 100")))
Y LO MAPEAMOS TAMBIEN:
ggplot()+
geom_sf(data=partidos_amba, aes(fill=CATEGORIA2), color="white")+
labs(title="SUPERFICIE PARTIDOS AMBA", subtitle="Censo 2010", caption = "Fuente: INDEC", fill="AREA en KM2")+
scale_fill_manual(values=c("darkgrey", "lightgrey"))+
theme_void()
A partir de este último mapa podemos notar que los partidos en color gris claro presentan superficie menor a 100 km2, es decir que son de menor tamaño que los partidos en color gris oscuro, cuya area es mayor a 100 km2.
1.c. Elegir uno de los mapas anteriores e incorporarle una o más geometrías que sean relevantes al análisis.
AL ÚLTIMO MAPA, vamos a agregarle el mapa de Lineas de Ferrocarril: cuya gemoetría son lineas.
ggplot()+
geom_sf(data=partidos_amba, aes(fill=pob_2010), color="grey")+
geom_sf(data=lineas_ffcc, aes(color=as.factor(LINEA)), size=1.25)+
labs(title="LINEAS DE FERROCARRIL EN AMBA", subtitle = "Partidos identificados segun total de población", caption = "Fuentes: INDEC, 2010. Ministerio de Transporte, Nación Argentina.", fill="Población", color="Líneas de Ferrocarril")+
scale_fill_viridis_b()+
theme_gray()
La idea a representar en este último mapa, es observar cómo las líneas de ferrocarriles se reparten por todo el territorio de AMABA, segun los partidos, identificando tambien la cantidad de población beneficiada por el alcance de las distintas líneas de trenes.
Fecha de entrega: 24/09/2021
FIN!