La accidentalidad vial en Colombia es un grave problema de salud pública, con alta mortalidad y costos asociados. Este estudio utiliza un modelo de regresión lineal para examinar la relación entre accidentes y variables como el número de vehículos y la población. Se analiza una base de datos estructurada para detectar asociaciones significativas que influyan en la frecuencia de accidentes. Se emplean herramientas estadísticas en RStudio, buscando generar hallazgos que contribuyan a estrategias de prevención vial efectivas.
install.packages("readxl", repos = "https://cloud.r-project.org")
## Installing package into 'C:/Users/maria/AppData/Local/R/win-library/4.5'
## (as 'lib' is unspecified)
## package 'readxl' successfully unpacked and MD5 sums checked
##
## The downloaded binary packages are in
## C:\Users\maria\AppData\Local\Temp\RtmpOMvahe\downloaded_packages
install.packages("tidyverse", repos = "https://cloud.r-project.org")
## Installing package into 'C:/Users/maria/AppData/Local/R/win-library/4.5'
## (as 'lib' is unspecified)
## package 'tidyverse' successfully unpacked and MD5 sums checked
##
## The downloaded binary packages are in
## C:\Users\maria\AppData\Local\Temp\RtmpOMvahe\downloaded_packages
library(readxl) # Esto activa la función read_excel()
# Cargar los datos desde Excel
datos <- read_excel("Accidentes colombia.xlsx")
# Ver las primeras filas
head(datos)
## # A tibble: 6 × 9
## Año Departamento Accidentes Heridos Muertes `Vehículos Registrados (mil)`
## <dbl> <chr> <dbl> <dbl> <dbl> <dbl>
## 1 2021 Antioquia 3500 2700 410 1900
## 2 2021 Bogotá D.C. 4200 3100 520 2100
## 3 2021 Valle del Cauca 3100 2500 360 1500
## 4 2021 Atlántico 1800 1200 220 950
## 5 2021 Santander 2000 1500 230 980
## 6 2021 Bolívar 1500 1100 180 870
## # ℹ 3 more variables: `Población (mil)` <dbl>, `Lluvias (mm)` <dbl>,
## # `Vías Pavimentadas (%)` <dbl>
# Crear el data frame
datos <- data.frame(
Departamento = c("Antioquia", "Bogotá", "Valle", "Atlántico", "Santander",
"Bolívar", "Cundinamarca", "Nariño", "Meta", "N. Santander"),
Accidentes = c(3500, 4200, 3100, 1800, 2000, 1500, 2500, 1100, 1200, 1300),
Heridos = c(2700, 3100, 2500, 1200, 1500, 1100, 1900, 800, 850, 950),
Muertes = c(410, 520, 360, 220, 230, 180, 300, 160, 170, 200),
Vehiculos = c(1900, 2100, 1500, 950, 980, 870, 1300, 620, 700, 750),
Poblacion = c(6400, 7800, 4500, 2800, 2300, 2100, 3100, 1900, 1800, 2000),
Lluvias = c(1200, 900, 1150, 1100, 1050, 1000, 950, 1400, 1350, 1300),
Vias = c(87, 95, 82, 78, 80, 73, 85, 66, 70, 75)
)
# Regresion lineal simple: Muertes - accidentes
modelo_simple <- lm(Muertes ~ Accidentes, data = datos)
summary(modelo_simple)
##
## Call:
## lm(formula = Muertes ~ Accidentes, data = datos)
##
## Residuals:
## Min 1Q Median 3Q Max
## -20.513 -11.774 -6.818 9.379 27.401
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 27.902098 13.431487 2.077 0.0714 .
## Accidentes 0.111305 0.005503 20.228 3.73e-08 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 17.66 on 8 degrees of freedom
## Multiple R-squared: 0.9808, Adjusted R-squared: 0.9784
## F-statistic: 409.2 on 1 and 8 DF, p-value: 3.727e-08
# Regresion lineal multiple
modelo_multiple <- lm(Muertes ~ Accidentes + Vehiculos + Poblacion + Lluvias + Vias, data = datos)
summary(modelo_multiple)
##
## Call:
## lm(formula = Muertes ~ Accidentes + Vehiculos + Poblacion + Lluvias +
## Vias, data = datos)
##
## Residuals:
## 1 2 3 4 5 6 7 8 9 10
## -10.745 7.829 2.838 -16.317 -12.971 1.696 11.392 3.028 3.396 9.855
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -213.64203 185.79553 -1.150 0.314
## Accidentes 0.08939 0.04226 2.115 0.102
## Vehiculos -0.09845 0.10124 -0.972 0.386
## Poblacion 0.02535 0.01222 2.074 0.107
## Lluvias 0.04581 0.04982 0.919 0.410
## Vias 3.34882 2.24476 1.492 0.210
##
## Residual standard error: 14.75 on 4 degrees of freedom
## Multiple R-squared: 0.9933, Adjusted R-squared: 0.985
## F-statistic: 118.8 on 5 and 4 DF, p-value: 0.0001944
plot(datos$Accidentes, datos$Muertes,
main = "Muertes vs Accidentes",
xlab = "Número de Accidentes",
ylab = "Número de Muertes",
pch = 19, col = "blue")
abline(modelo_simple, col = "red", lwd = 2)
A través de un modelo de regresión lineal, se encontró una relación significativa entre el número de accidentes viales en Colombia y variables como el parque automotor y la población. El crecimiento de vehículos y la densidad poblacional podrían aumentar el riesgo de siniestralidad. Se destacan limitaciones del modelo, como la falta de variables cualitativas. Se sugiere que futuros estudios integren más datos y evalúen modelos de regresión múltiple para mejorar la predicción.