MORS : Module d’Observation et de Rapprochement Statut vital

Gitlab

Lien vers le repo : Gitlab

Partager

Objectifs de l’algorithme

Outils d’identification de patients / dépistage biologique
Algorithmes de requête à la demande

L'algorithme MORS (Module d’Observation et de Rapprochement Statut vital) a pour objectif principal d'identifier de manière fiable et automatisée les patients d'un établissement de santé qui sont décédés, en rapprochant les données du système d'information patient avec la base de données nationale des décès gérée par l'INSEE.

Les objectifs spécifiques de cet algorithme sont les suivants :

  1. Fiabilisation du statut vital des patients :

    Mettre à jour de façon systématique et exhaustive le statut vital (vivant/décédé) dans le dossier patient informatisé.

    Garantir une information exacte pour l'ensemble des processus informatisé.

  2. Amélioration de la qualité des données et de l'identitovigilance :

    Fournir aux services informatiques (DSI) et aux cellules d'identitovigilance un outil de contrôle de la qualité des données d'identité (nom, prénom, date de naissance).

    Détecter et corriger les erreurs potentielles dans les dossiers patients.

  3. Soutien à la recherche médicale et clinique :

    Produire des données de mortalité fiables et à jour, indispensables pour la réalisation d'études scientifiques (ex: calcul de courbes de survie pour des cohortes de patients).

    Assurer la complétude des données pour les entrepôts de données de santé.

  4. Optimisation des processus administratifs et éthiques :

    Déclencher les procédures d'archivage légal des dossiers des patients décédés.

    Prévenir l'envoi de courriers, factures ou convocations à des patients décédés, afin d'éviter des situations douloureuses et préjudiciables pour les familles.

Auteur(s)

Établissement de santé
Sylvain ROBERT
sylvain.robert@chu-rennes.fr

Data Ingénieur, CHU de Rennes

Domaine médical

Autre

Méthodologie

Ce projet repose sur haute performance exploitant Polars, une bibliothèque de traitement de données massives.

L’algorithme s’appuie sur la distance de Damerau–Levenshtein, une méthode de comparaison qui mesure la ressemblance entre deux chaînes de caractères (par exemple des noms ou des dates) en comptant le nombre de modifications nécessaires pour passer de l’une à l’autre (ajout, suppression, changement ou inversion de lettres).     

Le processus s’articule autour de quatre étapes :

  • Nettoyage des données : harmoniser les écritures (ex. uniformiser les noms, corriger les dates invalides, transformer les codes postaux en codes INSEE, etc.).
  • Création de nouvelles variables pour mieux gérer les différentes écritures de certains champs (ex. noms composés).
  • Appariement conditionnel : comparer les prénoms, noms, dates de naissance et sexe en fixant des seuils de tolérance. Un appariement est validé si la ressemblance globale est suffisante.
  • Réduction des comparaisons grâce à une technique de blocking qui limite les rapprochements aux profils les plus plausibles (par ex. même date de naissance et mêmes premières lettres du nom et prénom).    

Langage de programmation

Python

Validation

Validé

L’algorithme est validé sur les données des EDS des CHU de Rennes, Nantes et Angers.

Entrepôt Rennes :

  • 2 218 950 patients
  • 12,7 heures (46 040 secondes)
  • Nombre de matchs : 210 053
    --> Vérification avec date de dernier séjour : 1%

Qualité de l’algorithme

Nombre de patients%
Total date décès hôpital 51 705100%
Match Insee45 298 87,6%
Qualité des matchs44 92599,17%

Date de dernière mise à jour

Il s’agit de la version 1.0 pour l'implémentation Python Polars : Mars 2026

Maintenance

Ad-hoc (en fonction des remontées de problèmes, suggestions)

Maintenu par ROBERT Sylvain (sylvain.robert@chu-rennes.fr) et l’équipe data de la Plateforme des données de santé.

Comment installer l’algorithme ?

git clone <repository-url>

cd DÉCÈS_INSEE_EHOP_V3

pip install -r requirements.txt

Config : Bien changer la variable path_directory pour y renseigner votre dossier ou mettre ./

Python venv : Il est conseillé de créer un venv python pour jouer le script dans un environnement contrôlé

Comment utiliser l’algorithme ?

Options de commande

-c : Chemin vers le fichier de configuration (défaut : config.ini)

-modules : Modules à exécuter (séparés par des virgules, défaut : complet)

-db_pwd : Mot de passe pour la base SQL (si utilisé)

 

Lancement avec configuration par défaut : python main.py

Lancement avec configuration personnalisée : python main.py -c my/path/config.ini -modules entrepot,complet,to_database -db_pwd mySecretPwd

Contributions

sylvain.robert@chu-rennes.fr

Licence et conditions d’utilisation

Sous licence Apache 2