Retour aux projets

Projet · 2026

Chicago Crime & Weather

500 000 crimes sur 20 ans croisés avec la météo et les inégalités socio-économiques de Chicago. Un modèle qui prédit l'arrestation, et un dashboard pour explorer les données.

500K

observations

86.8%

accuracy arrest

+1.06%

crimes / °C

Le problème

Comment la météo et le contexte socio-économique influencent-ils la criminalité à Chicago ? Et peut-on prédire si un crime donné aboutira à une arrestation, à partir de son type, de son moment et de son lieu ?

L'approche

01

Fusion multi-sources

500K crimes (2001-2025) croisés avec la météo quotidienne (Open-Meteo) et les indicateurs socio-économiques du recensement US par quartier.

02

Analyse exploratoire

Saisonnalité, effet température, pluie comme bouclier, inégalités entre quartiers. Comparaison avec la littérature (Ranson, 2014).

03

Modélisation

Random Forest pour prédire si un crime aboutit à une arrestation, à partir du type, du moment, du lieu et de la météo.

04

Dashboard interactif

Chaque scénario de test est pensé pour vérifier que le modèle généralise.

Résultats clés de l'analyse

5°C

Seuil critique

En dessous, Chicago « hiberne » criminellement. Au-dessus, la ville se réveille et les crimes suivent.

-6%

Effet de la pluie

Les jours pluvieux à +20°C enregistrent 6% de crimes en moins. La pluie agit comme un bouclier.

×2

Effet des inégalités

Les quartiers défavorisés subissent un effet météo deux fois plus fort que les quartiers aisés.

≈70%

Importance du type

Le type de crime domine l'importance des variables du modèle, loin devant l'heure, la météo ou le quartier.

Modélisation — prédire l'arrestation

Objectif : prédire si un crime aboutira à une arrestation, avec un déséquilibre de classes marqué (25% d'arrestations). Le compromis précision/rappel est un choix assumé, discuté dans le notebook.

ModèleAccuracyPrécisionRappel
Dummy (majoritaire)74.9%——
Random Forest86.8%0.930.51
RF (class_weight='balanced')85.0%0.740.61

Le modèle retenu privilégie le rappel (class_weight="balanced") : un choix assumé pour limiter les arrestations manquées, au prix de plus de faux positifs.

Limites assumées

  • Le modèle reflète les crimes rapportés et enregistrés, pas la criminalité réelle.
  • Les données d'arrestation peuvent refléter des biais systémiques dans les pratiques policières.
  • Échantillon de 500 000 lignes tiré d'un dataset bien plus large.
  • Le déséquilibre de classes (25% d'arrestations) limite le rappel du modèle même après rééquilibrage.

Stack

PythonPandasScikit-learnRandom ForestPlotlyStreamlitOpen-Meteo APIUS Census