El propósito general del problema es realizar diversas visualizaciones de las trayectorias realizadas por habitantes de Cali registradas en el 2015. A partir de información espacial de las diferentes comunas de la ciudad del Valle del Cauca, se podrán identificar los diferentes orígenes y destinos de las trayectorias realizadas por: Bicicleta, Moto y Automóvil. Para tal propósito se realizarán mapas para observar la información espacial contenida en los datos.
library(readxl)
encuestaOD <- read_excel(paste(path, "EncuestaOrigenDestino.xlsx", sep = "/"))
El conjunto de datos consta de diversas variables. No obstante, se procede a seleccionar las que son de mayor interés:
Las visualizaciones basadas en mapas que describen los resultados de la información espacial a menudo utilizan archivos con formato shape, los cuales son comúnmente empleados en sistemas de información geográfica (GIS) para representar datos geoespaciales. Estos archivos constan de un conjunto de archivos que contienen información sobre elementos geográficos, tales como puntos, líneas o polígonos, junto con sus atributos asociados. Para este caso se usará un archivo shape de las comunas de Cali. Por tal motivo se procede a cargar en consola para hacer los análisis pertinentes.
require(raster)
comunas=shapefile(paste(path_, "Comunas.shp", sep = "/"))
# Convertir el objeto SpatialPolygonsDataFrame a un objeto sf
library(sf)
library(ggplot2)
comunas_sf <- st_as_sf(comunas)
# Graficar el objeto sf con ggplot2
ggplot() +
geom_sf(data = comunas_sf, fill = "lightblue", color = "black") +
labs(title = "Mapa de Comunas en Cali", x = "", y = "") + # Etiquetas de ejes vacías
theme_void() # Usa theme_void() en lugar de theme_minimal()
El conjunto de datos consta de 35055 registros de trayectos de personas.
Para poder identificar los distintos registros de salida (considerando
el punto de partida de los trayectos), se realiza un filtro de la
información considerando un origen de partida diferente de
Fuera de Cali.
Una distribución de frecuencias de la información, considerando la comuna de origen, está dada por la siguiente línea de código:
encuestaOD1 <- subset(encuestaOD, `comuna origen` != "Fuera de Cali")
Una forma de poder identificar la distribución de frecuencias de la
cantidad de recorridos de origen es mediante la función
table, la cual permite identificar en cada comuna cuántas
trayectorias iniciaron en estas regiones geográficas de Cali.
table(encuestaOD1$`comuna origen`)
##
## 0 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15
## 672 794 2968 2121 1493 664 998 734 1124 952 1401 925 348 1238 685 1171
## 16 17 18 19 20 21 22
## 993 2377 1536 2850 733 818 1153
df1 = data.frame(table(encuestaOD1$`comuna origen`))
df1$Var1 = as.numeric(df1$Var1)
colnames(df1) <- c("Var1","N_Recorridos_Origen")
df1
## Var1 N_Recorridos_Origen
## 1 1 672
## 2 2 794
## 3 3 2968
## 4 4 2121
## 5 5 1493
## 6 6 664
## 7 7 998
## 8 8 734
## 9 9 1124
## 10 10 952
## 11 11 1401
## 12 12 925
## 13 13 348
## 14 14 1238
## 15 15 685
## 16 16 1171
## 17 17 993
## 18 18 2377
## 19 19 1536
## 20 20 2850
## 21 21 733
## 22 22 818
## 23 23 1153
Para asociar las cantidades de trayectorias realizadas en Cali desde el punto de origen, se procede a hacer un merge con la información anteriormente denotada:
# Combina el shapefile de comunas con los datos de población
comunas_con_poblacion <- merge(comunas, df1, by.x = "comuna", by.y = "Var1")
Considerando lo anterior, se obtiene una estructura de datos tipo
(Geometry type: MULTIPOLYGON), la cual será utilizada para representar
datos espaciales en el paquete sf de R. Este objeto
representa datos espaciales que constan de múltiples polígonos (como
comunas o áreas geográficas) con atributos asociados. Esencial para el
análisis y la visualización de datos espaciales (Obsérvese las
siguientes líneas de código).
library(sp)
library(sf)
# Convertir el objeto SpatialPolygonsDataFrame a sf
comunas_sf <- st_as_sf(comunas_con_poblacion)
# Convertir a formato MULTIPOLYGON
comunas_multipolygon <- st_cast(comunas_sf, "MULTIPOLYGON")
comunas_multipolygon
## Simple feature collection with 22 features and 5 fields
## Geometry type: MULTIPOLYGON
## Dimension: XY
## Bounding box: xmin: 1053868 ymin: 860190.2 xmax: 1068492 ymax: 879441.5
## Projected CRS: +proj=tmerc +lat_0=3.441883333 +lon_0=-76.5205625 +k=1 +x_0=1061900.18 +y_0=872364.63 +a=6379137 +rf=298.257222101 +units=m +no_defs
## First 10 features:
## comuna OBJECTID gid nombre N_Recorridos_Origen
## 1 2 1 107 Comuna 2 794
## 2 1 2 108 Comuna 1 672
## 3 3 3 109 Comuna 3 2968
## 4 19 4 110 Comuna 19 1536
## 5 15 5 103 Comuna 15 685
## 6 17 6 104 Comuna 17 993
## 7 18 7 105 Comuna 18 2377
## 8 22 8 106 Comuna 22 818
## 9 6 9 89 Comuna 6 664
## 10 4 10 90 Comuna 4 2121
## geometry
## 1 MULTIPOLYGON (((1059648 874...
## 2 MULTIPOLYGON (((1054094 875...
## 3 MULTIPOLYGON (((1061757 874...
## 4 MULTIPOLYGON (((1057817 873...
## 5 MULTIPOLYGON (((1065485 869...
## 6 MULTIPOLYGON (((1061675 868...
## 7 MULTIPOLYGON (((1059061 867...
## 8 MULTIPOLYGON (((1059486 864...
## 9 MULTIPOLYGON (((1065143 879...
## 10 MULTIPOLYGON (((1063833 877...
Se logra observar en Projected CRS la descripción del
sistema de referencia de coordenadas (CRS) proyectado utilizado para
representar las coordenadas de las geometrías en el conjunto de datos.
Adicionalmente, se presentan las variables internas (comunas, nombres,
N_Recorridos_Origen).
require(dplyr)
mapa_cali_comunas <- comunas_multipolygon %>%
#filter(name_long == "Freq") %>%
select(N_Recorridos_Origen, nombre)
library(sf)
library(tmap)
tmap_mode("view")
mapa_comunas_Cali <- tm_shape(mapa_cali_comunas) +
tm_borders() +
tm_fill(col = "N_Recorridos_Origen", palette = "viridis") +
tm_text("nombre", size = 0.8)
mapa_comunas_Cali
La visualización anterior muestra las comunas de Cali con los conteos de trayectorias realizadas considerando la comuna de partida, esta información muestra una variación significativa en la cantidad de recorridos de origen en la ciudad de Cali, con la Comuna 3 registrando la cifra más alta de 2968 trayectos y la Comuna 13 la más baja con solo 348 trayectos. Las tres comunas con la mayor cantidad de recorridos de origen son:
Estas comunas son claramente áreas de alta actividad de salida, lo que puede estar relacionado con su densidad de población, ubicación geográfica o infraestructura de transporte.Por otro lado, las comunas con la menor cantidad de recorridos de origen son:
Estas cifras más bajas pueden ser indicativas de áreas residenciales menos densas o con menos opciones de transporte público, lo que puede influir en la movilidad de los habitantes en esas áreas.
Para identificar los trayectos de Cali que fueron realizados en
bicicleta, se realiza un filtro de la información
considerando un origen de partida diferente de
Fuera de Cali y adicionalmente que el tipo de transporte
sea 1 (bicicleta). A continuación, se muestran las líneas de código para
contar los trayectos según estas características:
library(dplyr)
origen_bici <- encuestaOD %>%
filter(`TIPO DE VEHÍCULO`== 1 & `comuna origen` != "Fuera de Cali")
df2 = data.frame(table(origen_bici$`comuna origen`))
df2$Var1 = as.numeric(df2$Var1)
colnames(df2) <- c("Var1","N_Recorridos_Origen_Bici")
str(df2)
## 'data.frame': 23 obs. of 2 variables:
## $ Var1 : num 1 2 3 4 5 6 7 8 9 10 ...
## $ N_Recorridos_Origen_Bici: int 43 36 159 99 74 38 44 35 52 53 ...
Anteriormente se muestra la distribución de frecuencias de la cantidad
de recorridos de origen (desde el uso de la bicicleta) mediante la
función table, la cual permite identificar cuántas
trayectorias iniciaron en cada comuna de Cali.
Para asociar las cantidades de trayectorias realizadas en Cali desde el punto de origen, se procede a realizar un merge con la información anteriormente mencionada:
# Combina el shapefile de comunas con los datos de población
comunas_con_poblacion <- merge(comunas, df2, by.x = "comuna", by.y = "Var1")
comunas_sf <- st_as_sf(comunas_con_poblacion) # Convertir el objeto SpatialPolygonsDataFrame a sf
comunas_multipolygon <- st_cast(comunas_sf, "MULTIPOLYGON") # Convertir a formato MULTIPOLYGON
comunas_multipolygon
## Simple feature collection with 22 features and 5 fields
## Geometry type: MULTIPOLYGON
## Dimension: XY
## Bounding box: xmin: 1053868 ymin: 860190.2 xmax: 1068492 ymax: 879441.5
## Projected CRS: +proj=tmerc +lat_0=3.441883333 +lon_0=-76.5205625 +k=1 +x_0=1061900.18 +y_0=872364.63 +a=6379137 +rf=298.257222101 +units=m +no_defs
## First 10 features:
## comuna OBJECTID gid nombre N_Recorridos_Origen_Bici
## 1 2 1 107 Comuna 2 36
## 2 1 2 108 Comuna 1 43
## 3 3 3 109 Comuna 3 159
## 4 19 4 110 Comuna 19 111
## 5 15 5 103 Comuna 15 37
## 6 17 6 104 Comuna 17 73
## 7 18 7 105 Comuna 18 141
## 8 22 8 106 Comuna 22 44
## 9 6 9 89 Comuna 6 38
## 10 4 10 90 Comuna 4 99
## geometry
## 1 MULTIPOLYGON (((1059648 874...
## 2 MULTIPOLYGON (((1054094 875...
## 3 MULTIPOLYGON (((1061757 874...
## 4 MULTIPOLYGON (((1057817 873...
## 5 MULTIPOLYGON (((1065485 869...
## 6 MULTIPOLYGON (((1061675 868...
## 7 MULTIPOLYGON (((1059061 867...
## 8 MULTIPOLYGON (((1059486 864...
## 9 MULTIPOLYGON (((1065143 879...
## 10 MULTIPOLYGON (((1063833 877...
library(dplyr)
mapa_cali_comunas <- comunas_multipolygon %>%
select(N_Recorridos_Origen_Bici, nombre)
Dado el valor de las representaciones geográficas para este conjunto de datos, es fundamental crear los mapas pertinentes:
library(tmap)
mapa_comunas_Cali <- tm_shape(mapa_cali_comunas) +
tm_borders() +
tm_fill(col = "N_Recorridos_Origen_Bici", palette = "viridis") +
tm_text("nombre", size = 0.8)
mapa_comunas_Cali
La visualización anterior muestra las comunas de Cali con los conteos de trayectorias realizadas con el uso del medio de transporte Bicicleta, se puede observar que la comunas 3 es la región que lidera con la mayor cantidad de trayectorias con 159.
Una variedad en la cantidad de recorridos de origen en bicicleta en la ciudad de Cali, con la Comuna 3 registrando la cifra más alta de 159 trayectos y la Comuna 13 la más baja con solo 14 trayectos. Las tres comunas con la mayor cantidad de recorridos de origen en bicicleta son:
Estas comunas son áreas donde la bicicleta es un medio de transporte popular, lo que puede estar relacionado con factores como la infraestructura de ciclovías, la topografía y la cultura ciclista. Por otro lado, las comunas con la menor cantidad de recorridos de origen en bicicleta son:
Estas cifras más bajas pueden deberse a una infraestructura de ciclovías menos desarrollada o a una menor cultura de uso de la bicicleta como medio de transporte en esas áreas.
Para identificar los trayectos realizados en Cali utilizando Moto, se
filtra la información considerando que el origen del trayecto no sea
Fuera de Cali y que el tipo de transporte sea 2 (Moto). En
las siguientes líneas de código se realiza el conteo de trayectos según
estas características:
library(dplyr)
origen_moto <- encuestaOD %>%
filter(`TIPO DE VEHÍCULO`== 2 & `comuna origen` != "Fuera de Cali")
df3 = data.frame(table(origen_moto$`comuna origen`))
df3$Var1 = as.numeric(df3$Var1)
colnames(df3) <- c("Var1","N_Recorridos_Origen_Moto")
str(df3)
## 'data.frame': 23 obs. of 2 variables:
## $ Var1 : num 1 2 3 4 5 6 7 8 9 10 ...
## $ N_Recorridos_Origen_Moto: int 259 375 1414 970 720 319 473 350 552 413 ...
Anteriormente se muestra la distribución de frecuencias de la cantidad
de recorridos de origen (utilizando moto) mediante la función
table, la cual permite identificar en cada comuna cuántas
trayectorias iniciaron en estas regiones geográficas de Cali.
Para asociar las cantidades de trayectorias realizadas en Cali desde el punto de origen, se procede a hacer un merge con la información anteriormente denotada:
# Combina el shapefile de comunas con los datos de población
comunas_con_poblacion <- merge(comunas, df3, by.x = "comuna", by.y = "Var1")
comunas_sf <- st_as_sf(comunas_con_poblacion) # Convertir el objeto SpatialPolygonsDataFrame a sf
comunas_multipolygon <- st_cast(comunas_sf, "MULTIPOLYGON") # Convertir a formato MULTIPOLYGON
comunas_multipolygon
## Simple feature collection with 22 features and 5 fields
## Geometry type: MULTIPOLYGON
## Dimension: XY
## Bounding box: xmin: 1053868 ymin: 860190.2 xmax: 1068492 ymax: 879441.5
## Projected CRS: +proj=tmerc +lat_0=3.441883333 +lon_0=-76.5205625 +k=1 +x_0=1061900.18 +y_0=872364.63 +a=6379137 +rf=298.257222101 +units=m +no_defs
## First 10 features:
## comuna OBJECTID gid nombre N_Recorridos_Origen_Moto
## 1 2 1 107 Comuna 2 375
## 2 1 2 108 Comuna 1 259
## 3 3 3 109 Comuna 3 1414
## 4 19 4 110 Comuna 19 746
## 5 15 5 103 Comuna 15 310
## 6 17 6 104 Comuna 17 450
## 7 18 7 105 Comuna 18 1136
## 8 22 8 106 Comuna 22 378
## 9 6 9 89 Comuna 6 319
## 10 4 10 90 Comuna 4 970
## geometry
## 1 MULTIPOLYGON (((1059648 874...
## 2 MULTIPOLYGON (((1054094 875...
## 3 MULTIPOLYGON (((1061757 874...
## 4 MULTIPOLYGON (((1057817 873...
## 5 MULTIPOLYGON (((1065485 869...
## 6 MULTIPOLYGON (((1061675 868...
## 7 MULTIPOLYGON (((1059061 867...
## 8 MULTIPOLYGON (((1059486 864...
## 9 MULTIPOLYGON (((1065143 879...
## 10 MULTIPOLYGON (((1063833 877...
library(dplyr)
mapa_cali_comunas <- comunas_multipolygon %>%
select(N_Recorridos_Origen_Moto, nombre)
Considerando la importancia de establecer visualizaciones geográficas para este tipo de información, se procede a realizar los mapas correspondientes:
library(tmap)
mapa_comunas_Cali <- tm_shape(mapa_cali_comunas) +
tm_borders() +
tm_fill(col = "N_Recorridos_Origen_Moto", palette = "viridis") +
tm_text("nombre", size = 0.8)
mapa_comunas_Cali
Basado en los datos proporcionados, se puede observar que las comunas con la mayor cantidad de recorridos de origen en moto son las siguientes:
Estas tres comunas destacan por tener el mayor número de recorridos de origen en moto en la ciudad de Cali. Este análisis proporciona información importante para comprender la distribución de la movilidad en la ciudad y puede ser útil para la planificación urbana y el diseño de políticas de transporte. Adicionalmente, las comunas con la menor cantidad de recorridos de origen en moto son:
Para identificar los trayectos realizados en Cali utilizando Auto, se
filtra la información considerando que el origen del trayecto no sea
Fuera de Cali y que el tipo de transporte sea 3 (Auto). En
las siguientes líneas de código se realiza el conteo de trayectos según
estas características:
library(dplyr)
origen_auto <- encuestaOD %>%
filter(`TIPO DE VEHÍCULO`== 3 & `comuna origen` != "Fuera de Cali")
df4 = data.frame(table(origen_auto$`comuna origen`))
df4$Var1 = as.numeric(df4$Var1)
colnames(df4) <- c("Var1","N_Recorridos_Origen_Auto")
str(df4)
## 'data.frame': 23 obs. of 2 variables:
## $ Var1 : num 1 2 3 4 5 6 7 8 9 10 ...
## $ N_Recorridos_Origen_Auto: int 317 301 1121 854 551 241 389 283 420 382 ...
Anteriormente se muestra la distribución de frecuencias de la cantidad
de recorridos de origen (utilizando Auto) mediante la función
table, la cual permite identificar en cada comuna cuántas
trayectorias iniciaron en estas regiones geográficas de Cali.
Para asociar las cantidades de trayectorias realizadas en Cali desde el punto de origen, se procede a hacer un merge con la información anteriormente denotada:
# Combina el shapefile de comunas con los datos de población
comunas_con_poblacion <- merge(comunas, df4, by.x = "comuna", by.y = "Var1")
comunas_sf <- st_as_sf(comunas_con_poblacion) # Convertir el objeto SpatialPolygonsDataFrame a sf
comunas_multipolygon <- st_cast(comunas_sf, "MULTIPOLYGON") # Convertir a formato MULTIPOLYGON
comunas_multipolygon
## Simple feature collection with 22 features and 5 fields
## Geometry type: MULTIPOLYGON
## Dimension: XY
## Bounding box: xmin: 1053868 ymin: 860190.2 xmax: 1068492 ymax: 879441.5
## Projected CRS: +proj=tmerc +lat_0=3.441883333 +lon_0=-76.5205625 +k=1 +x_0=1061900.18 +y_0=872364.63 +a=6379137 +rf=298.257222101 +units=m +no_defs
## First 10 features:
## comuna OBJECTID gid nombre N_Recorridos_Origen_Auto
## 1 2 1 107 Comuna 2 301
## 2 1 2 108 Comuna 1 317
## 3 3 3 109 Comuna 3 1121
## 4 19 4 110 Comuna 19 559
## 5 15 5 103 Comuna 15 272
## 6 17 6 104 Comuna 17 385
## 7 18 7 105 Comuna 18 899
## 8 22 8 106 Comuna 22 328
## 9 6 9 89 Comuna 6 241
## 10 4 10 90 Comuna 4 854
## geometry
## 1 MULTIPOLYGON (((1059648 874...
## 2 MULTIPOLYGON (((1054094 875...
## 3 MULTIPOLYGON (((1061757 874...
## 4 MULTIPOLYGON (((1057817 873...
## 5 MULTIPOLYGON (((1065485 869...
## 6 MULTIPOLYGON (((1061675 868...
## 7 MULTIPOLYGON (((1059061 867...
## 8 MULTIPOLYGON (((1059486 864...
## 9 MULTIPOLYGON (((1065143 879...
## 10 MULTIPOLYGON (((1063833 877...
library(dplyr)
mapa_cali_comunas <- comunas_multipolygon %>%
select(N_Recorridos_Origen_Auto, nombre)
Considerando la importancia de establecer visualizaciones geográficas para este tipo de información, se procede a realizar los mapas correspondientes:
library(tmap)
mapa_comunas_Cali <- tm_shape(mapa_cali_comunas) +
tm_borders() +
tm_fill(col = "N_Recorridos_Origen_Auto", palette = "viridis") +
tm_text("nombre", size = 0.8)
mapa_comunas_Cali
Basado en los datos proporcionados, se puede realizar un análisis detallado de los recorridos de origen en automóvil en la ciudad de Cali. Entre las comunas de Cali, se observa que las siguientes tres comunas destacan por tener la mayor cantidad de recorridos de origen en automóvil:
Estas cifras revelan una fuerte preferencia por el uso del automóvil como medio de transporte para los residentes que realizan trayectos dentro de la ciudad. Esta tendencia puede estar influenciada por varios factores, como la disponibilidad de vías y estacionamiento, la distancia entre lugares de interés y la infraestructura de transporte público.
Por otro lado, también es importante identificar las comunas con la menor cantidad de recorridos de origen en automóvil, ya que esto puede indicar una menor dependencia del automóvil como medio de transporte principal. Las comunas con menor cantidad de recorridos de origen en automóvil son:
Estas comunas muestran una preferencia relativa por otros medios de transporte, como la bicicleta, el transporte público o incluso caminar, lo que puede reflejar una mayor conciencia ambiental, una mejor accesibilidad al transporte público o una infraestructura vial más adecuada para modos de transporte alternativos.
Para identificar los trayectos de destino en Cali, se realiza un filtro de la información considerando un origen de destino diferente de `Fuera de Cali. A continuación, se muestran las líneas de código para contar los trayectos según estas características:
library(dplyr)
destino <- encuestaOD %>%
filter(`comuna destino` != "Fuera de Cali")
df5 = data.frame(table(destino$`comuna destino`))
df5$Var1 = as.numeric(df5$Var1)
colnames(df5) <- c("Var1","N_Recorridos_Destino")
str(df5)
## 'data.frame': 23 obs. of 2 variables:
## $ Var1 : num 1 2 3 4 5 6 7 8 9 10 ...
## $ N_Recorridos_Destino: int 788 230 4810 3859 1856 522 716 748 1025 1279 ...
Anteriormente se muestra la distribución de frecuencias de la cantidad
de recorridos hacia el destino mediante la función table,
la cual permite identificar cuántas trayectorias de llegada en cada
comuna de Cali.
Para asociar las cantidades de trayectorias realizadas en Cali hacia el punto de destino, se procede a realizar un merge con la información anteriormente mencionada:
# Combina el shapefile de comunas con los datos de población
comunas_con_poblacion <- merge(comunas, df5, by.x = "comuna", by.y = "Var1")
comunas_sf <- st_as_sf(comunas_con_poblacion) # Convertir el objeto SpatialPolygonsDataFrame a sf
comunas_multipolygon <- st_cast(comunas_sf, "MULTIPOLYGON") # Convertir a formato MULTIPOLYGON
comunas_multipolygon
## Simple feature collection with 22 features and 5 fields
## Geometry type: MULTIPOLYGON
## Dimension: XY
## Bounding box: xmin: 1053868 ymin: 860190.2 xmax: 1068492 ymax: 879441.5
## Projected CRS: +proj=tmerc +lat_0=3.441883333 +lon_0=-76.5205625 +k=1 +x_0=1061900.18 +y_0=872364.63 +a=6379137 +rf=298.257222101 +units=m +no_defs
## First 10 features:
## comuna OBJECTID gid nombre N_Recorridos_Destino
## 1 2 1 107 Comuna 2 230
## 2 1 2 108 Comuna 1 788
## 3 3 3 109 Comuna 3 4810
## 4 19 4 110 Comuna 19 662
## 5 15 5 103 Comuna 15 379
## 6 17 6 104 Comuna 17 743
## 7 18 7 105 Comuna 18 2164
## 8 22 8 106 Comuna 22 515
## 9 6 9 89 Comuna 6 522
## 10 4 10 90 Comuna 4 3859
## geometry
## 1 MULTIPOLYGON (((1059648 874...
## 2 MULTIPOLYGON (((1054094 875...
## 3 MULTIPOLYGON (((1061757 874...
## 4 MULTIPOLYGON (((1057817 873...
## 5 MULTIPOLYGON (((1065485 869...
## 6 MULTIPOLYGON (((1061675 868...
## 7 MULTIPOLYGON (((1059061 867...
## 8 MULTIPOLYGON (((1059486 864...
## 9 MULTIPOLYGON (((1065143 879...
## 10 MULTIPOLYGON (((1063833 877...
library(dplyr)
mapa_cali_comunas <- comunas_multipolygon %>%
select(N_Recorridos_Destino, nombre)
Dado el valor de las representaciones geográficas para este conjunto de datos, es fundamental crear los mapas pertinentes:
library(tmap)
mapa_comunas_Cali <- tm_shape(mapa_cali_comunas) +
tm_borders() +
tm_fill(col = "N_Recorridos_Destino", palette = "viridis") +
tm_text("nombre", size = 0.8)
mapa_comunas_Cali
Basado en los datos proporcionados sobre los recorridos de origen en la ciudad de Cali, se puede realizar un análisis centrado en las comunas de destino de estos trayectos. Al examinar los recorridos hacia diferentes comunas de destino, se observa que algunas comunas destacan por recibir un mayor número de trayectos. Las tres comunas con la mayor cantidad de recorridos de destino son:
Estas cifras sugieren que estas comunas son destinos populares para los residentes de Cali en sus desplazamientos, lo que puede estar relacionado con la presencia de centros comerciales, instituciones educativas, lugares de trabajo u otras atracciones importantes en estas áreas.
Por otro lado, también es importante identificar las comunas que reciben menos trayectos, ya que esto puede indicar una menor actividad o interés en esas áreas como destinos finales. Las comunas con la menor cantidad de recorridos de destino son:
Para identificar los trayectos de destino en Cali que fueron realizados
en bicicleta, se realiza un filtro de la información
considerando un origen de partida diferente de
Fuera de Cali y adicionalmente que el tipo de transporte
sea 1 (bicicleta). A continuación, se muestran las líneas de código para
contar los trayectos según estas características:
library(dplyr)
destino_bici <- encuestaOD %>%
filter(`TIPO DE VEHÍCULO`== 1 & `comuna destino` != "Fuera de Cali")
df6 = data.frame(table(origen_bici$`comuna destino`))
df6$Var1 = as.numeric(df6$Var1)
colnames(df6) <- c("Var1","N_Recorridos_Destino_Bici")
str(df6)
## 'data.frame': 24 obs. of 2 variables:
## $ Var1 : num 1 2 3 4 5 6 7 8 9 10 ...
## $ N_Recorridos_Destino_Bici: int 42 10 201 172 80 40 32 36 47 59 ...
Anteriormente se muestra la distribución de frecuencias de la cantidad
de recorridos de destino (desde el uso de la bicicleta) mediante la
función table, la cual permite identificar cuántas
trayectorias iniciaron en cada comuna de Cali.
Para asociar las cantidades de trayectorias realizadas en Cali hacia el punto de destino, se procede a realizar un merge con la información anteriormente mencionada:
# Combina el shapefile de comunas con los datos de población
comunas_con_poblacion <- merge(comunas, df6, by.x = "comuna", by.y = "Var1")
comunas_sf <- st_as_sf(comunas_con_poblacion) # Convertir el objeto SpatialPolygonsDataFrame a sf
comunas_multipolygon <- st_cast(comunas_sf, "MULTIPOLYGON") # Convertir a formato MULTIPOLYGON
comunas_multipolygon
## Simple feature collection with 22 features and 5 fields
## Geometry type: MULTIPOLYGON
## Dimension: XY
## Bounding box: xmin: 1053868 ymin: 860190.2 xmax: 1068492 ymax: 879441.5
## Projected CRS: +proj=tmerc +lat_0=3.441883333 +lon_0=-76.5205625 +k=1 +x_0=1061900.18 +y_0=872364.63 +a=6379137 +rf=298.257222101 +units=m +no_defs
## First 10 features:
## comuna OBJECTID gid nombre N_Recorridos_Destino_Bici
## 1 2 1 107 Comuna 2 10
## 2 1 2 108 Comuna 1 42
## 3 3 3 109 Comuna 3 201
## 4 19 4 110 Comuna 19 29
## 5 15 5 103 Comuna 15 20
## 6 17 6 104 Comuna 17 31
## 7 18 7 105 Comuna 18 101
## 8 22 8 106 Comuna 22 24
## 9 6 9 89 Comuna 6 40
## 10 4 10 90 Comuna 4 172
## geometry
## 1 MULTIPOLYGON (((1059648 874...
## 2 MULTIPOLYGON (((1054094 875...
## 3 MULTIPOLYGON (((1061757 874...
## 4 MULTIPOLYGON (((1057817 873...
## 5 MULTIPOLYGON (((1065485 869...
## 6 MULTIPOLYGON (((1061675 868...
## 7 MULTIPOLYGON (((1059061 867...
## 8 MULTIPOLYGON (((1059486 864...
## 9 MULTIPOLYGON (((1065143 879...
## 10 MULTIPOLYGON (((1063833 877...
library(dplyr)
mapa_cali_comunas <- comunas_multipolygon %>%
select(N_Recorridos_Destino_Bici, nombre)
Dado el valor de las representaciones geográficas para este conjunto de datos, es fundamental crear los mapas pertinentes:
library(tmap)
mapa_comunas_Cali <- tm_shape(mapa_cali_comunas) +
tm_borders() +
tm_fill(col = "N_Recorridos_Destino_Bici", palette = "viridis") +
tm_text("nombre", size = 0.8)
mapa_comunas_Cali
Ahora en relación a los datos proporcionados sobre los recorridos en bicicleta hacia diferentes comunas de destino en la ciudad de Cali, se identifican las comunas más frecuentadas por los ciclistas y aquellas que reciben menos trayectos en bicicleta lacia el lugar de destino. Las tres comunas con la mayor cantidad de recorridos de destino en bicicleta son:
Estos datos sugieren que estas comunas son destinos populares para los ciclistas en Cali, lo que puede estar relacionado con la presencia de infraestructura ciclista, rutas seguras o atracciones específicas en esas áreas.
Por otro lado, también es importante destacar las comunas que reciben menos trayectos en bicicleta, ya que esto puede indicar áreas con una infraestructura menos favorable para los ciclistas o una menor demanda de viajes en bicicleta. Las comunas con la menor cantidad de recorridos de destino en bicicleta son:
Para identificar los trayectos de llegada a destinos realizados en Cali
utilizando Moto, se filtra la información considerando que el origen del
trayecto no sea Fuera de Cali y que el tipo de transporte
sea 2 (Moto). En las siguientes líneas de código se realiza el conteo de
trayectos según estas características:
library(dplyr)
destino_moto <- encuestaOD %>%
filter(`TIPO DE VEHÍCULO`== 2 & `comuna destino` != "Fuera de Cali")
df7 = data.frame(table(destino_moto$`comuna destino`))
df7$Var1 = as.numeric(df7$Var1)
colnames(df7) <- c("Var1","N_Recorridos_Destino_Moto")
str(df7)
## 'data.frame': 23 obs. of 2 variables:
## $ Var1 : num 1 2 3 4 5 6 7 8 9 10 ...
## $ N_Recorridos_Destino_Moto: int 390 112 2177 1734 846 215 323 353 470 608 ...
Anteriormente se muestra la distribución de frecuencias de la cantidad
de recorridos hacia destinos (utilizando moto) mediante la función
table, la cual permite identificar en cada comuna cuántas
trayectorias terminan en estas regiones geográficas de Cali.
Para asociar las cantidades de trayectorias realizadas en Cali hacia el punto de llegada o destino, se procede a hacer un merge con la información anteriormente denotada:
# Combina el shapefile de comunas con los datos de población
comunas_con_poblacion <- merge(comunas, df7, by.x = "comuna", by.y = "Var1")
comunas_sf <- st_as_sf(comunas_con_poblacion) # Convertir el objeto SpatialPolygonsDataFrame a sf
comunas_multipolygon <- st_cast(comunas_sf, "MULTIPOLYGON") # Convertir a formato MULTIPOLYGON
comunas_multipolygon
## Simple feature collection with 22 features and 5 fields
## Geometry type: MULTIPOLYGON
## Dimension: XY
## Bounding box: xmin: 1053868 ymin: 860190.2 xmax: 1068492 ymax: 879441.5
## Projected CRS: +proj=tmerc +lat_0=3.441883333 +lon_0=-76.5205625 +k=1 +x_0=1061900.18 +y_0=872364.63 +a=6379137 +rf=298.257222101 +units=m +no_defs
## First 10 features:
## comuna OBJECTID gid nombre N_Recorridos_Destino_Moto
## 1 2 1 107 Comuna 2 112
## 2 1 2 108 Comuna 1 390
## 3 3 3 109 Comuna 3 2177
## 4 19 4 110 Comuna 19 302
## 5 15 5 103 Comuna 15 188
## 6 17 6 104 Comuna 17 327
## 7 18 7 105 Comuna 18 927
## 8 22 8 106 Comuna 22 243
## 9 6 9 89 Comuna 6 215
## 10 4 10 90 Comuna 4 1734
## geometry
## 1 MULTIPOLYGON (((1059648 874...
## 2 MULTIPOLYGON (((1054094 875...
## 3 MULTIPOLYGON (((1061757 874...
## 4 MULTIPOLYGON (((1057817 873...
## 5 MULTIPOLYGON (((1065485 869...
## 6 MULTIPOLYGON (((1061675 868...
## 7 MULTIPOLYGON (((1059061 867...
## 8 MULTIPOLYGON (((1059486 864...
## 9 MULTIPOLYGON (((1065143 879...
## 10 MULTIPOLYGON (((1063833 877...
library(dplyr)
mapa_cali_comunas <- comunas_multipolygon %>%
select(N_Recorridos_Destino_Moto, nombre)
CA continuación se establecen visualizaciones geográficas para este tipo de información, se procede a realizar los mapas correspondientes:
library(tmap)
mapa_comunas_Cali <- tm_shape(mapa_cali_comunas) +
tm_borders() +
tm_fill(col = "N_Recorridos_Destino_Moto", palette = "viridis") +
tm_text("nombre", size = 0.8)
mapa_comunas_Cali
En referencia a trayectos en moto y analizando las comunas de destino en la ciudad de Cali, se identifica que:
Estos datos sugieren que estas comunas son destinos populares para los motociclistas en Cali, lo que puede estar relacionado con diferentes factores como la densidad de población, la actividad comercial o la accesibilidad vial.
Por otro lado, también es importante destacar las comunas que reciben menos trayectos en moto, ya que esto puede indicar áreas con una menor demanda de viajes en moto o una infraestructura vial menos favorable para este tipo de vehículos. Las comunas con la menor cantidad de recorridos de destino en moto son:
Estas comunas pueden tener una menor actividad comercial o una menor densidad de población
Para identificar los trayectos realizados en Cali utilizando Auto, se
filtra la información considerando que el destino del trayecto no sea
Fuera de Cali y que el tipo de transporte sea 3 (Auto). En
las siguientes líneas de código se realiza el conteo de trayectos según
estas características:
library(dplyr)
origen_auto <- encuestaOD %>%
filter(`TIPO DE VEHÍCULO`== 3 & `comuna origen` != "Fuera de Cali")
df8 = data.frame(table(origen_auto$`comuna origen`))
df8$Var1 = as.numeric(df8$Var1)
colnames(df8) <- c("Var1","N_Recorridos_Destino_Auto")
str(df8)
## 'data.frame': 23 obs. of 2 variables:
## $ Var1 : num 1 2 3 4 5 6 7 8 9 10 ...
## $ N_Recorridos_Destino_Auto: int 317 301 1121 854 551 241 389 283 420 382 ...
Anteriormente se muestra la distribución de frecuencias de la cantidad
de recorridos de destino (utilizando Auto) mediante la función
table, la cual permite identificar en cada comuna cuántas
trayectorias iniciaron en estas regiones geográficas de Cali.
Para asociar las cantidades de trayectorias realizadas en Cali hacia el punto de destino, se procede a hacer un merge con la información anteriormente denotada:
# Combina el shapefile de comunas con los datos de población
comunas_con_poblacion <- merge(comunas, df8, by.x = "comuna", by.y = "Var1")
comunas_sf <- st_as_sf(comunas_con_poblacion) # Convertir el objeto SpatialPolygonsDataFrame a sf
comunas_multipolygon <- st_cast(comunas_sf, "MULTIPOLYGON") # Convertir a formato MULTIPOLYGON
comunas_multipolygon
## Simple feature collection with 22 features and 5 fields
## Geometry type: MULTIPOLYGON
## Dimension: XY
## Bounding box: xmin: 1053868 ymin: 860190.2 xmax: 1068492 ymax: 879441.5
## Projected CRS: +proj=tmerc +lat_0=3.441883333 +lon_0=-76.5205625 +k=1 +x_0=1061900.18 +y_0=872364.63 +a=6379137 +rf=298.257222101 +units=m +no_defs
## First 10 features:
## comuna OBJECTID gid nombre N_Recorridos_Destino_Auto
## 1 2 1 107 Comuna 2 301
## 2 1 2 108 Comuna 1 317
## 3 3 3 109 Comuna 3 1121
## 4 19 4 110 Comuna 19 559
## 5 15 5 103 Comuna 15 272
## 6 17 6 104 Comuna 17 385
## 7 18 7 105 Comuna 18 899
## 8 22 8 106 Comuna 22 328
## 9 6 9 89 Comuna 6 241
## 10 4 10 90 Comuna 4 854
## geometry
## 1 MULTIPOLYGON (((1059648 874...
## 2 MULTIPOLYGON (((1054094 875...
## 3 MULTIPOLYGON (((1061757 874...
## 4 MULTIPOLYGON (((1057817 873...
## 5 MULTIPOLYGON (((1065485 869...
## 6 MULTIPOLYGON (((1061675 868...
## 7 MULTIPOLYGON (((1059061 867...
## 8 MULTIPOLYGON (((1059486 864...
## 9 MULTIPOLYGON (((1065143 879...
## 10 MULTIPOLYGON (((1063833 877...
library(dplyr)
mapa_cali_comunas <- comunas_multipolygon %>%
select(N_Recorridos_Destino_Auto, nombre)
Considerando la importancia de establecer visualizaciones geográficas para este tipo de información, se procede a realizar los mapas correspondientes:
library(tmap)
mapa_comunas_Cali <- tm_shape(mapa_cali_comunas) +
tm_borders() +
tm_fill(col = "N_Recorridos_Destino_Auto", palette = "viridis") +
tm_text("nombre", size = 0.8)
mapa_comunas_Cali
Los recorridos en automóvil en la ciudad de Cali,indican que las comunas más frecuentadas por los conductores a sus lugares de destino son:
Estos datos indican que estas comunas son destinos populares para los conductores de autos en Cali, lo que puede estar relacionado con factores como la ubicación de áreas comerciales, centros de trabajo u otros puntos de interés.
Por otro lado, también es importante considerar las comunas que reciben menos trayectos en automóvil, ya que esto puede indicar áreas con menor actividad comercial o menor densidad de población, así como posibles limitaciones en la infraestructura vial. Las comunas con la menor cantidad de recorridos de destino en automóvil son:
Estas comunas pueden tener una menor demanda de viajes en automóvil debido a factores como una menor densidad de población, menos actividad comercial o una infraestructura vial menos favorable.
A partir de los análisis individuales de los distintos tipos de trayectos en la ciudad de Cali, se puede extraer varias conclusiones:
Según las trayectorias de Origen
Distribución de Trayectos: La ciudad de Cali muestra una distribución variada en cuanto a los puntos de origen de los trayectos registrados. Desde áreas densamente pobladas hasta zonas residenciales más tranquilas, la diversidad de puntos de origen refleja la complejidad de la movilidad urbana en la ciudad.
Patrones de Movilidad: Los datos revelan patrones de movilidad distintivos en diferentes comunas de Cali. Comunas como la 3, 20 y 18 emergen como puntos de origen prominentes, sugiriendo una alta actividad de salida, posiblemente asociada con áreas comerciales, centros educativos o lugares de trabajo.
Uso de Medios de Transporte: Se observa una variedad en los medios de transporte utilizados para los trayectos de origen. Mientras que algunas comunas muestran una preferencia por la bicicleta, otras dependen más de vehículos motorizados como motocicletas y automóviles. Esto resalta la importancia de políticas de movilidad inclusivas que aborden las necesidades de diferentes grupos de usuarios.
Según las trayectorias de destino
Conectividad: El análisis de los destinos de los trayectos revela la importancia de una red de transporte bien conectada. Comunas como la 3, 20 y 4, que reciben un gran número de trayectos, probablemente estén bien conectadas a través de vías principales y servicios de transporte público eficientes.
Desigualdades Espaciales: Se observa una disparidad en la distribución de trayectos hacia diferentes comunas, lo que puede reflejar desigualdades en el acceso a oportunidades y servicios.
Patrones de Movilidad: Al analizar los recorridos según las comunas de origen y destino, se identifican patrones claros de movilidad. Por ejemplo, algunas comunas como la 3, 20 y 18 destacan tanto como puntos de origen como de destino para diversos tipos de trayectos, lo que sugiere una alta actividad económica, residencial o comercial en esas áreas.
Conclusiones Generales
Preferencias de Transporte: Los datos muestran que algunas comunas son más propensas a utilizar ciertos medios de transporte. Por ejemplo, la Comuna 3 es popular tanto para trayectos en moto como en automóvil, mientras que la Comuna 20 destaca en trayectos en bicicleta. Estas preferencias pueden estar influenciadas por factores como la infraestructura vial, la accesibilidad y las preferencias individuales de los residentes.Es importante generar políticas o actividades en la población para mejorar el trafico y sobre todo el desplazamiento de las personas.
Desigualdades en la Movilidad: Se observa una disparidad en la cantidad de trayectos entre diferentes comunas. Mientras que algunas comunas registran muchos trayectos, otras tienen cifras significativamente más bajas. Esta disparidad puede deberse a diferencias en la densidad de población, la actividad económica y la infraestructura de transporte en cada comuna. No obstante, es crucial abordar las desigualdades en el acceso a la movilidad urbana para garantizar que todos los ciudadanos de la ciudad de Cali puedan acceder a oportunidades y servicios de manera equitativa.