Chicago Traffic Crash Injuries (2021-2025)

Zhiyou Liu

2026-08-08

Motivation

Traffic crash is an important public safety issue. People I know were recently involved in a crash. Luckily there were no injuries.

This project studies which crash conditions are related to crashes that lead to injuries in Chicago.

Research Question

How are weather, lighting, time of day, speed limit, and crash type related to whether a crash causes an injury?

Data Source

Source: Chicago Data Portal

Dataset: Traffic Crashes - Crashes

Years used: 2021–2025

Variables Used

Outcome:

  • injury_crash: whether the crash caused any injury

Predictors:

  • Weather
  • Lighting
  • Crash hour
  • Speed limit (in groups of 5 mph)
  • Crash type

Data Size

# A tibble: 1 × 2
  total_crashes variables_used
          <int>          <int>
1        547840              9

Data Cleaning

Data cleaning steps:

  • Change column names to lowercase
  • Keep only the selected variables
  • Filter only dates in 2021–2025
  • Remove crashes with missing injury information
  • Create injury_crash
  • For visualizations, only display groups with more than 500 crashes (except crash hour)

Overall Injury Results

# A tibble: 1 × 3
  total_crashes injury_crashes injury_rate
          <int>          <int>       <dbl>
1        547840          85477        15.6

Injury Rate by Hour

Injury Rate by Speed Limit

Injury Rate by Weather

Injury Rate by Lighting

Injury Rate by Crash Type

Simple Model


Call:
glm(formula = injury_crash ~ posted_speed_limit + crash_hour + 
    weather_condition + lighting_condition + first_crash_type, 
    family = binomial, data = crashes)

Coefficients:
                                               Estimate Std. Error  z value
(Intercept)                                  -1.9872254  0.6572634   -3.023
posted_speed_limit                            0.0459852  0.0009155   50.232
crash_hour                                   -0.0093524  0.0007308  -12.797
weather_conditionBLOWING SNOW                -0.2517000  0.6698045   -0.376
weather_conditionCLEAR                       -0.2199575  0.6563454   -0.335
weather_conditionCLOUDY/OVERCAST             -0.1941448  0.6567711   -0.296
weather_conditionFOG/SMOKE/HAZE              -0.0905232  0.6654413   -0.136
weather_conditionFREEZING RAIN/DRIZZLE       -0.2665471  0.6599322   -0.404
weather_conditionOTHER                        0.0707880  0.6596862    0.107
weather_conditionRAIN                        -0.1680930  0.6564721   -0.256
weather_conditionSEVERE CROSS WIND GATE      -0.4519024  0.7749341   -0.583
weather_conditionSLEET/HAIL                  -0.2979762  0.6698196   -0.445
weather_conditionSNOW                        -0.4873340  0.6568245   -0.742
weather_conditionUNKNOWN                     -0.9543494  0.6569937   -1.453
lighting_conditionDARKNESS, LIGHTED ROAD      0.2366639  0.0219686   10.773
lighting_conditionDAWN                        0.0766735  0.0372450    2.059
lighting_conditionDAYLIGHT                   -0.1415210  0.0212818   -6.650
lighting_conditionDUSK                        0.0237928  0.0322509    0.738
lighting_conditionUNKNOWN                    -0.6286658  0.0410958  -15.298
first_crash_typeANIMAL                       -1.4383998  0.1775173   -8.103
first_crash_typeFIXED OBJECT                 -0.4407867  0.0191248  -23.048
first_crash_typeHEAD ON                       0.4957361  0.0325398   15.235
first_crash_typeOTHER NONCOLLISION           -0.3960793  0.0709993   -5.579
first_crash_typeOTHER OBJECT                 -0.3866008  0.0362804  -10.656
first_crash_typeOVERTURNED                    0.6030820  0.1114263    5.412
first_crash_typePARKED MOTOR VEHICLE         -1.9708854  0.0171945 -114.623
first_crash_typePEDALCYCLIST                  2.1194002  0.0247431   85.656
first_crash_typePEDESTRIAN                    3.2068230  0.0289005  110.961
first_crash_typeREAR END                     -0.7288165  0.0128010  -56.934
first_crash_typeREAR TO FRONT                -1.7964156  0.0509814  -35.237
first_crash_typeREAR TO REAR                 -2.4824613  0.1791645  -13.856
first_crash_typeREAR TO SIDE                 -1.2696041  0.0563666  -22.524
first_crash_typeSIDESWIPE OPPOSITE DIRECTION -0.8320550  0.0370828  -22.438
first_crash_typeSIDESWIPE SAME DIRECTION     -1.6979628  0.0172410  -98.484
first_crash_typeTRAIN                         0.8003029  0.3954667    2.024
first_crash_typeTURNING                      -0.4701773  0.0131185  -35.841
                                             Pr(>|z|)    
(Intercept)                                    0.0025 ** 
posted_speed_limit                            < 2e-16 ***
crash_hour                                    < 2e-16 ***
weather_conditionBLOWING SNOW                  0.7071    
weather_conditionCLEAR                         0.7375    
weather_conditionCLOUDY/OVERCAST               0.7675    
weather_conditionFOG/SMOKE/HAZE                0.8918    
weather_conditionFREEZING RAIN/DRIZZLE         0.6863    
weather_conditionOTHER                         0.9145    
weather_conditionRAIN                          0.7979    
weather_conditionSEVERE CROSS WIND GATE        0.5598    
weather_conditionSLEET/HAIL                    0.6564    
weather_conditionSNOW                          0.4581    
weather_conditionUNKNOWN                       0.1463    
lighting_conditionDARKNESS, LIGHTED ROAD      < 2e-16 ***
lighting_conditionDAWN                         0.0395 *  
lighting_conditionDAYLIGHT                   2.93e-11 ***
lighting_conditionDUSK                         0.4607    
lighting_conditionUNKNOWN                     < 2e-16 ***
first_crash_typeANIMAL                       5.37e-16 ***
first_crash_typeFIXED OBJECT                  < 2e-16 ***
first_crash_typeHEAD ON                       < 2e-16 ***
first_crash_typeOTHER NONCOLLISION           2.42e-08 ***
first_crash_typeOTHER OBJECT                  < 2e-16 ***
first_crash_typeOVERTURNED                   6.22e-08 ***
first_crash_typePARKED MOTOR VEHICLE          < 2e-16 ***
first_crash_typePEDALCYCLIST                  < 2e-16 ***
first_crash_typePEDESTRIAN                    < 2e-16 ***
first_crash_typeREAR END                      < 2e-16 ***
first_crash_typeREAR TO FRONT                 < 2e-16 ***
first_crash_typeREAR TO REAR                  < 2e-16 ***
first_crash_typeREAR TO SIDE                  < 2e-16 ***
first_crash_typeSIDESWIPE OPPOSITE DIRECTION  < 2e-16 ***
first_crash_typeSIDESWIPE SAME DIRECTION      < 2e-16 ***
first_crash_typeTRAIN                          0.0430 *  
first_crash_typeTURNING                       < 2e-16 ***
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 474451  on 547839  degrees of freedom
Residual deviance: 383179  on 547804  degrees of freedom
AIC: 383251

Number of Fisher Scoring iterations: 6

Single Level Deletions

Single term deletions

Model:
injury_crash ~ posted_speed_limit + crash_hour + weather_condition + 
    lighting_condition + first_crash_type
                   Df Deviance    AIC   LRT  Pr(>Chi)    
<none>                  383179 383251                    
posted_speed_limit  1   385871 385941  2692 < 2.2e-16 ***
crash_hour          1   383341 383411   163 < 2.2e-16 ***
weather_condition  11   384004 384054   825 < 2.2e-16 ***
lighting_condition  5   384937 384999  1759 < 2.2e-16 ***
first_crash_type   17   463886 463924 80707 < 2.2e-16 ***
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Key Findings

  • Injury crashes is only a small percentage of all crashes.
  • Most predictor levels are statistically significant, but all of the individual weather levels and one lighting level are not significant (p > 0.1).
  • Using single level deletions, all 5 predictors are statistically significant (p < 0.001). Crash type had the strongest relationship since it has the largest likelihood-ratio test statistic; the least strongest significance are weather and crash hour.
  • Weather is significant overall, though no individual level was significantly different from the reference level.

Limitations

  • The data only includes reported crashes.
  • Some crash details are recorded by officers and may contain reporting error.
  • The dataset contains over 547,000 crashes, so even fairly small relationships can become statistically significant, even if the variable may not have a large practical effect.
  • The results show relationships, not proof of causation.

Conclusion

Crash type had the strongest relationship with injury risk. Crashes that involve pedestrians and pedalcyclists have highest injury rate.

Hours of the day, lighting, and weather are also significant, dark hours and worse sighting have higher injury rates. Speed limit is also a significant factor, with injury rate increasing as speed limit increases.

Future Work

Future analysis could include:

  • Community area
  • Vehicle type
  • How severe the injury was
  • More advanced prediction models