OBSERVATOIRE DES PATIENTS TRAUMATISÉS SÉVÈREStraumabase.eu
TRAUMABASE · GOLDEN BASE

Guide d’utilisation des données

Interpréter les valeurs manquantes et préparer les données pour l’analyse.

Ce guide présente les marqueurs de données manquantes, les relations mère–fille et les précautions d’import en Python, R et SAS.

01

Guide des valeurs manquantes

Définition des marqueurs

La Golden Base utilise quatre marqueurs pour distinguer différentes significations et origines des données manquantes. Leur sens doit être pris en compte dans l’analyse des données et dans le choix d’une stratégie de traitement des valeurs manquantes, en tenant compte du mécanisme de données manquantes.

ND

Non disponible

L’information est attendue, mais n’a pas été retrouvée dans le dossier du patient.

NA

Non applicable

La valeur ne peut pas exister dans ce contexte. Par exemple : la dose d’un traitement qui n’a pas été administré.

NR

Non renseigné

La variable n’était pas collectée dans cette source ou pendant cette période.

IMP

Imprenable

Une mesure physiologique n’a pas pu être obtenue, par exemple en raison d’un signal trop faible ou absent.

Prise en compte dans l’analyse

NA : utiliser le contexte clinique

Une imputation fondée sur le sens clinique de la variable peut être justifiée pour NA. Lorsque la réponse à la question mère établit l’absence d’un événement ou d’un traitement, la réponse attendue peut être « Non » ou 0. Par exemple, si un traitement n’a pas été administré, sa dose est codée NA par défaut dans la Golden Base. Dans ce contexte, elle peut être imputée à 0 avec une relative fiabilité.

Relations mère–fille

Dans le formulaire de recueil (eCRF), une réponse peut ouvrir ou fermer une autre question. La variable mère détermine si la variable fille est applicable.

Exemple mère-fille : Transport médicalisé – Catécholamines

Transport médicalisé ?

Oui↓Catécholamines : Oui / Non / NDND si non disponible
Non↓NAQuestion sur les catécholamines non applicable
ND↓NDInformation inconnue

Exemple d’imputation : dose de catécholamines

Si aucune catécholamine n’a été administrée, la dose est codée NA dans la Golden Base. L’absence de traitement permet alors d’imputer cette dose à 0 pour l’analyse.

Exemple d’imputation des NA : arrêt cardiaque
Contexte cliniqueArrêt cardiaqueAbsence de circulation spontanée
Dans les donnéesFréquence cardiaque (FC) : NAPression artérielle systolique (PAS) : NAPression artérielle diastolique (PAD) : NAMesures codées non applicables dans ce contexte
Pour l’analyse0 peut être retenuSi cette convention est justifiée pour la variable et le moment étudié
Voir la carte des dépendances mère–fille

ND, NR et IMP : méthodes statistiques

Pour ND, NR et IMP (ainsi que dans les rares cas où NA ne peut pas être imputé à partir d’une hypothèse clinique), il faut choisir une méthode statistique adaptée à la question de recherche et au mécanisme de données manquantes. Selon le contexte, cela peut inclure une imputation multiple, une méthode d’estimation tenant compte des données manquantes et des analyses de sensibilité.

NR peut concerner une période entière de collecte ; IMP peut être lié à l’état clinique.

Ressources suggérées pour le traitement des valeurs manquantes

R-miss-tastic propose des méthodes, références, tutoriels et exemples en R et Python pour choisir une approche adaptée aux données manquantes.

02

Notes techniques

La Golden Base contient la chaîne de caractères littérale "NA" pour « Non applicable ». Certains logiciels la convertissent automatiquement en valeur manquante générique à l’import, ce qui efface cette distinction. Préserver les quatre marqueurs avant de préparer les variables pour l’analyse.

Le fichier CSV de la Golden Base utilise la virgule comme séparateur, et aussi comme marque décimale (entre guillemets, par exemple "12,5"). Les colonnes qui contiennent des marqueurs restent textuelles : après le traitement des marqueurs selon le plan d’analyse, les convertir en nombres (en remplaçant la virgule par un point) ou en dates. Préserver le format des identifiants dont les zéros initiaux sont significatifs.

Python / pandas

Pour importer le fichier CSV ou Excel avec pandas :

import pandas as pd

na_values = ["", "nan", "NaN"]

# Si vous avez un fichier CSV
df_csv = pd.read_csv(
    "golden_base.csv",
    decimal=",",
    keep_default_na=False,
    na_values=na_values,
)

# Si vous avez un fichier Excel
df_excel = pd.read_excel(
    "golden_base.xlsx",
    keep_default_na=False,
    na_values=na_values,
)
  • keep_default_na=False : préserve le marqueur littéral "NA", que pandas convertirait sinon en valeur manquante.
  • na_values : seules les cellules vides et les chaînes "nan" et "NaN" deviennent des valeurs manquantes ; "NA", "ND", "NR" et "IMP" sont conservées.
  • decimal="," : lit les décimales des colonnes numériques.

Documentation de référence

R

Pour importer le fichier CSV ou Excel dans R :

# Si vous avez un fichier CSV
df_csv <- read.csv(
  "golden_base.csv",
  dec = ",",
  na.strings = c("", "nan", "NaN"),
  check.names = FALSE
)

# Si vous avez un fichier Excel
df_excel <- readxl::read_excel(
  "golden_base.xlsx",
  na = c("", "nan", "NaN"),
  guess_max = 1048576
)
  • na.strings : liste les valeurs manquantes sans "NA", que read.csv() traiterait sinon comme une valeur manquante.
  • dec = "," : lit les décimales des colonnes numériques.
  • na : rend explicite que read_excel() ne convertit que les cellules vides (et "nan", "NaN").
  • guess_max = 1048576 : le nombre maximal de lignes d’une feuille Excel : toutes les lignes sont examinées pour détecter les types, même si les marqueurs apparaissent tard dans le fichier.

Documentation de référence

SAS

Pour importer le fichier CSV ou Excel dans SAS :

/* Si vous avez un fichier CSV */
filename gb "golden_base.csv" encoding="utf-8" lrecl=1048576;
proc import datafile=gb out=work.golden_base dbms=csv replace;
    delimiter=",";
    guessingrows=max;
    getnames=yes;
run;

/* Si vous avez un fichier Excel */
proc import datafile="golden_base.xlsx" out=work.golden_base dbms=xlsx replace;
    getnames=yes;
run;
  • encoding="utf-8" : indique que le fichier est en UTF-8. Sans cette option, SAS le lit dans l’encodage de sa session (souvent WLATIN1 sous Windows) et les caractères spéciaux, comme les lettres accentuées, s’affichent mal. Un fichier Excel n’en a pas besoin : son texte est toujours enregistré en Unicode.
  • lrecl=1048576 : évite de tronquer les lignes, très longues dans la Golden Base.
  • guessingrows=max : examine toutes les lignes pour choisir le type et la longueur de chaque colonne.
  • dbms=xlsx : lit le fichier Excel ; cette option nécessite le module SAS/ACCESS Interface to PC Files. Les nombres y sont stockés directement, sans virgule décimale à convertir, et encoding, lrecl et guessingrows ne s’appliquent qu’au fichier CSV.
  • Encodage de la session : avec un fichier CSV comme avec un fichier Excel, SAS convertit le texte dans l’encodage de sa session. Si la session n’est pas en UTF-8, certains caractères spéciaux peuvent être perdus : vérifier quelques valeurs accentuées après l’import (%put &=sysencoding; affiche l’encodage de la session).
  • Marqueurs et décimales : les colonnes qui contiennent des marqueurs ou des décimales écrites avec une virgule sont importées en caractères. Les convertir après le traitement des marqueurs, par exemple avec input(VARIABLE, commax32.).