Heatmap

Graphique de l'évolution des cas de COVID-19 Lorsque la pandémie a frappé Milan et l’Italie, comme beaucoup d’autres, j’ai voulu examiner les données, même si elles étaient incertaines.

L’objectif n’était pas de créer un système prédictif – de nombreux autres s’y étaient déjà consacrés, en utilisant des informations et des modèles spécifiques – mais de mettre en évidence les tendances existantes.

Les données nettoyées (graphique ci-dessous) pouvaient en effet fournir de meilleures informations que les valeurs brutes rapportées dans les médias chaque jour.

J’ai décidé de mettre en ligne les représentations que j’avais créées sur le site www.covcompare.com. Le contenu est généré par un programme qui télécharge quotidiennement (vers l’heure de la publication) des données à partir de sites institutionnels et prépare ensuite certains résultats utiles.

À la demande de l’utilisateur, vous pouvez afficher n’importe quelle combinaison de régions.

Il existe essentiellement quatre visualisations liées aux nouveaux cas d’infection par le coronavirus, permettant des comparaisons entre les régions. La première est le nombre absolu de nouvelles infections, tel que rapporté par les institutions, montrant principalement que ce chiffre brut ne dit pas grand-chose.

Ensuite, il y a un graphique des données traitées – normalisé par rapport à la population, logarithme, moyenne mobile – où vous pouvez réellement voir ce qui se passe dans une région spécifique. Enfin, il y a une carte thermique représentant tous les jours et toutes les régions.

En ce qui concerne la carte thermique, j’ai voulu ordonner les régions de manière à ce qu’elles montrent une transition homogène. Pour ce faire, j’ai utilisé l’analyse en composantes principales (j’ai également expérimenté d’autres techniques, avec des résultats similaires), qui extrait automatiquement le meilleur ordre des régions.

Enfin, j’ai utilisé un algorithme de regroupement particulièrement adapté aux séries temporelles pour regrouper les régions (il existe des groupes avec des tendances similaires en termes d’accélération et de décélération) et un algorithme de détection des pics pour identifier les moments culminants des différentes vagues dans différentes zones.

Carte thermique

Pics et regroupements

 

Le code est disponible sur Github : https://github.com/giosds/covcompare

Le backend est implémenté en Python, en utilisant Flask.

 

 

Note: traduit automatiquement en français.