bd_waze <- read.csv("/Users/juandiego/Downloads/28ba197e-fe89-40f4-91f4-705a0f713ecc.csv")
filas_marinilla = which(bd_waze$Municipality == "Marinilla")
bd_waze_marinilla = bd_waze[filas_marinilla,]

Introducción

Marinilla es un municipio colombiano ubicado en el departamento de Antioquia y es uno de los 9 municipios que conforman el altiplano del oriente. Su cabecera se ubica aproximadamente a 40 minutos de la ciudad de Medellín, tiene 31 barrios y el mismo número de veredas, entre las cuales se encuentran: La Peña, Belén, Chochó Mayo, San José, Yarumos, La Milagrosa y Montañita. El municipio no cuenta con aeropuerto alguno y no posee vías fluviales. La principal arteria de comunicación del municipio es la autopista Medellín-Bogotá y la vía que conduce hacia el municipio de El Peñol. Marinilla tiene vías pavimentadas que conectan las veredas del municipio, además la zona urbana cuenta con un sistema de vías peatonales y calles pavimentadas.

Es conocida como «la Esparta colombiana», debido a que, durante la Independencia, los hijos de Marinilla protagonizaron y lideraron diferentes batallas. Hoy Marinilla se ha convertido en un gran centro cultural de Antioquia y de Colombia, es tierra de historias, de guitarras y goza de una gran belleza natural. Es patrimonio y monumento nacional declarado por el decreto 264 del 12 de febrero de 1963. Esta población se enfrenta a diversos retos relacionados con la movilidad vehicular, los cuales son de especial interés en este informe, dado que la infraestructura y el transporte son aspectos clave para el desarrollo y la integración del municipio en la región.

Marinilla tiene una población de 64 645 habitantes según el censo de 2018.2​ Su población urbana es de 44 230 habitantes, y la rural de 20 415. La tasa de alfabetización es del 93.3 %.7​ Los mestizos y los blancos constituyen el 99,7 de la población y los negros y afrodescendientes, el 0,3.

Waze for Cities

La infraestructura deficiente y la ausencia de cámaras de vigilancia, semáforos inteligentes y otros sistemas tecnológicos en Marinilla contribuyen a los problemas de movilidad en el municipio. La escasez de herramientas de monitoreo y control del tráfico genera dificultades para la gestión eficiente del transporte y la seguridad vial. Sin una infraestructura moderna, los residentes y conductores deben enfrentarse a situaciones impredecibles en las vías, como congestiones, accidentes o desvíos no señalizados.

En este contexto, el uso de bases de datos como las de Waze se convierte en una necesidad para mejorar la movilidad en Marinilla Waze, al ser una aplicación basada en la colaboración en tiempo real, permite a los conductores y agencias de seguridad vial compartir información sobre el tráfico, accidentes, bloqueos o cualquier otro inconveniente en las rutas. Esto es especialmente relevante en un municipio donde la información sobre el estado de las vías no siempre está actualizada o disponible de manera oficial.

Waze for Cities permite la colaboración entre ciudades y ciudadanos para mejorar la movilidad urbana. Facilita el intercambio de datos sobre incidentes y cierres viales, lo que ayuda a los gobiernos a responder rápidamente a accidentes y congestión. Además, Waze utiliza estos datos para ofrecer información en tiempo real sobre las condiciones del tráfico, lo que mejora la seguridad y eficiencia de las rutas. El programa también apoya la planificación urbana al proporcionar datos crowdsourced para decisiones informadas sobre infraestructura y transporte. Cualquier ciudad o entidad pública puede unirse. Para hacerlo, deben registrarse en la plataforma y establecer una colaboración con Waze. El programa utiliza la base de datos generada por los usuarios de Waze.

Explicación de las variables

En este conjunto de datos, se incluyen diversas variables que describen eventos relacionados con la movilidad en los municipios. A continuación, se detallan algunas de las variables más relevantes:

require(knitr)
require(kableExtra)
knitr::kable(head(bd_waze_marinilla)) %>%
  kable_styling() %>%
  scroll_box(width = "100%", height = "300px")
idEvent idMunicipality Municipality idDANEMunicipality StartDate StartTime EndTime StreetType Type SubType RoadType AverageReliability Location_X Location_Y
1550 52370 8 Marinilla 5440 2024-11-28 19:45 01:35 AP Medellín-Bogotá / RN60-04 >Oriente HAZARD HAZARD_ON_ROAD_CONSTRUCTION 3 7 -75.32716 6.168090
1622 53758 8 Marinilla 5440 2024-11-28 21:11 02:21 Carrera 31 JAM 2 5 -75.33514 6.173527
1623 53760 8 Marinilla 5440 2024-11-28 20:48 02:21 AP Medellín-Bogotá / RN60-04 >Occidente JAM JAM_HEAVY_TRAFFIC 3 5 -75.33310 6.168423
1658 54664 8 Marinilla 5440 2024-11-28 21:15 02:51 Calle 28 JAM 2 5 -75.33497 6.171736
1777 57078 8 Marinilla 5440 2024-11-28 22:43 04:01 JAM JAM_HEAVY_TRAFFIC 2 5 -75.34535 6.172675
1801 57560 8 Marinilla 5440 2024-11-28 22:47 04:15 Carrera 43 JAM JAM_HEAVY_TRAFFIC 2 5 -75.34551 6.174964
  • idEvent: Identificador único para cada evento registrado. (Variable cualitativa - nominal)
  • idMunicipality: Identificador del municipio donde ocurre el evento. (Variable cualitativa - nominal)
  • Municipality: Nombre del municipio. (Variable cualitativa - nominal)
  • idDANEMunicipality: Identificador asociado a la clasificación DANE del municipio. (Variable cualitativa - nominal)
  • StartDate: Fecha de inicio del evento. (Variable cuantitativa - continua)
  • StartTime: Hora de inicio del evento. (Variable cuantitativa - continua)
  • EndTime: Hora de finalización del evento. (Variable cuantitativa - continua)
  • StreetType: Tipo de calle donde ocurre el evento. (Variable cualitativa - nominal)
  • Type: Tipo de evento (accidente, congestión, etc.). (Variable cualitativa - nominal)
  • SubType: Subcategoría del tipo de evento. (Variable cualitativa - nominal)
  • RoadType: Tipo de carretera afectada. (Variable cualitativa - nominal)
  • AverageReliability: Promedio de fiabilidad de la información sobre el evento. (Variable cuantitativa - continua)
  • Location_X: Coordenada X de la ubicación del evento. (Variable cuantitativa - continua)
  • Location_Y: Coordenada Y de la ubicación del evento. (Variable cuantitativa - continua)

Análisis de los datos

Eventos por tipo

require(table1)
require(ggplot2)
table1(~Type, data = bd_waze_marinilla)
Overall
(N=1897)
Type
ACCIDENT 128 (6.7%)
HAZARD 356 (18.8%)
JAM 1393 (73.4%)
ROAD_CLOSED 20 (1.1%)
bd_waze_marinilla = data.frame(bd_waze_marinilla)
ggplot(bd_waze_marinilla, aes(x = bd_waze_marinilla$Type)) +
  geom_bar(fill = "steelblue", color = "black") +
  geom_text(stat = "count", aes(label = after_stat(count)), vjust = -0.5) +
  labs(title = "Frequency of Road Events",
       x = "Event Type",
       y = "Count") +
  theme_minimal()

El tipo de evento con la mayor frecuencia es la congestión vehicular (jam) con 1393 casos reportados, el cual ocurre por un margen significativo en comparación con los otros tipos de eventos. Esto es claramente evidente en el gráfico, donde la congestión vehicular se destaca ampliamente en términos de conteo, superando con creces al siguiente tipo de evento más común. “Peligro en la vía” (hazard) es el segundo tipo de evento más común con 356 casos reportados.

1) Análisis temporal

library(ggplot2)
bd_waze_marinilla$StartHour <- as.numeric(format(as.POSIXct(bd_waze_marinilla$StartTime, format="%H:%M"), "%H"))

ggplot(bd_waze_marinilla, aes(x=StartHour)) +
  geom_histogram(binwidth=1, fill="blue", color="black") +
  labs(title="Eventos por hora", x="Hora", y="Numero de eventos")

Se observan dos picos horarios de eventualidades: uno entre las 2 y las 4 de la tarde, y otro entre las 10 y las 12 de la noche.

Si la congestión vehicular es el evento más común por un margen significativo y se presentan picos durante esas horas, podríamos inferir lo siguiente:

  1. Mayor tráfico en horarios específicos: Los picos entre las 2 y 4 de la tarde, y entre las 10 y 12 de la noche, podrían estar relacionados con el aumento del volumen de vehículos en esas franjas horarias. Esto podría deberse a factores como el horario de salida del trabajo o el regreso a casa, así como el desplazamiento nocturno.

  2. Relación con actividades sociales o laborales: Durante la tarde, puede ser una hora de salida de oficinas, mientras que en la noche, podría estar relacionado con actividades recreativas, cenas o el regreso de personas a casa después de eventos sociales o laborales.

  3. Problemas de infraestructura vial: Los picos podrían sugerir que las carreteras o calles no están adaptadas para manejar el alto volumen de vehículos en esas horas, lo que resulta en congestionamientos. Esto podría indicar la necesidad de mejorar la infraestructura vial o las estrategias de gestión del tráfico.

  4. Condiciones externas: Además, podrían estar influenciados por condiciones como el clima, eventos especiales o el comportamiento habitual de los conductores, lo que genera fluctuaciones en la congestión en esos horarios.

Posibles acciones a considerar:

  • Establecer medidas para mejorar la fluidez del tráfico en esos picos (como el ajuste de semáforos o carriles adicionales).
  • Analizar el comportamiento de los conductores en esos momentos para identificar patrones y optimizar las rutas o el transporte público.

2) Análisis espacial

require(leaflet)

bd_waze_marinilla = data.frame(bd_waze_marinilla)
leaflet() %>% addTiles() %>% addCircleMarkers(lng =bd_waze_marinilla$Location_X ,lat = bd_waze_marinilla$Location_Y, clusterOptions=markerClusterOptions())

En el mapa se observa que las zonas con mayor numero de eventos resportados son Calle 29 y Carrera 25.

3) Distribución del tipo de eventos

ggplot(bd_waze_marinilla, aes(x=Type)) +
  geom_bar(fill="green", color="black") +
  labs(title="Distribución de Tipos de Accidentes", x="Tipo de Evento", y="Número de Accidentes")