Dans le cadre d'analyses cliniques ou épidémiologiques, la gestion des données manquantes est une étape critique. L'utilisation de la PROC MI avec la méthode MCMC (Markov Chain Monte Carlo), comme illustrée ici sur les données Fitness1, représente l'état de l'art pour traiter un schéma de données manquantes arbitraire.
Contrairement aux méthodes d'imputation simple qui réduisent artificiellement la variabilité, l'imputation multiple génère ici 5 jeux de données distincts. Cette approche permet de capturer l'incertitude liée aux valeurs absentes en combinant les corrélations entre l'absorption d'oxygène (Oxygen) et les performances physiques.
Le code commence par créer un jeu de données 'Fitness1' contenant des mesures de condition physique (Oxygen, RunTime, RunPulse). Certaines valeurs sont manquantes pour illustrer un schéma de données manquantes arbitraire. Ensuite, la procédure `PROC MI` est utilisée pour imputer ces valeurs manquantes. Elle génère 5 jeux de données imputés en utilisant une méthode MCMC (Markov Chain Monte Carlo) et produit des graphiques de diagnostic pour évaluer la convergence des chaînes.
Analyse des données
Type : CREATION_INTERNE
Les données sont créées directement dans le script via une étape DATA avec une instruction DATALINES. Il n'y a aucune dépendance à des fichiers externes.
1 Bloc de code
DATA STEP Data
Explication : Ce bloc de code crée la table SAS 'Fitness1'. L'instruction `input` lit les trois variables Oxygen, RunTime et RunPulse. Le double 'at' (`@@`) à la fin de l'instruction `input` indique à SAS de conserver la ligne de données en cours pour lire plusieurs observations à partir de la même ligne.
Explication : Ce bloc utilise la procédure d'imputation multiple `PROC MI`. L'option `nimpute=5` demande la création de 5 jeux de données imputés. La méthode d'imputation utilisée est MCMC, comme spécifié par l'instruction `mcmc`. Des graphiques de diagnostic (trace et fonction d'autocorrélation) sont demandés pour la moyenne de la variable `Oxygen` afin de vérifier la convergence de l'algorithme. Les variables à imputer sont listées dans l'instruction `var`.
Copié !
ods graphics on;
proc mi data=Fitness1 seed=501213 nimpute=5 mu0=50 10 180;
mcmc plots=(trace(mean(Oxygen)) acf(mean(Oxygen)));
var Oxygen RunTime RunPulse;
run;
L'activation des ods graphics et l'option plots=(trace acf) sont essentielles. Elles permettent de visualiser les tracés de convergence (trace plots) et les fonctions d'autocorrélation (ACF). Sans ces diagnostics, vous avancez en aveugle : ils confirment que les chaînes de Markov ont bien atteint leur distribution stationnaire, garantissant que les valeurs imputées sont statistiquement cohérentes. Enfin, l'utilisation d'un seed fixe assure la reproductibilité de vos résultats, un impératif pour toute soumission de rapport d'analyse.
Ce matériel est fourni "tel quel" par We Are Cas. Il n'y a aucune garantie, expresse ou implicite, quant à la qualité marchande ou à l'adéquation à un usage particulier concernant le matériel ou le code contenu dans les présentes. We Are Cas n'est pas responsable des erreurs dans ce matériel tel qu'il existe maintenant ou existera, et We Are Cas ne fournit pas de support technique pour celui-ci.
Informations de Copyright : S A S S A M P L E L I B R A R Y, NAME: MIEX11, TITLE: Documentation Example 11 for PROC MI, PRODUCT: STAT
SAS et tous les autres noms de produits ou de services de SAS Institute Inc. sont des marques déposées ou des marques de commerce de SAS Institute Inc. aux États-Unis et dans d'autres pays. ® indique un enregistrement aux États-Unis. WeAreCAS est un site communautaire indépendant et n'est pas affilié à SAS Institute Inc.
Ce site utilise des cookies techniques et analytiques pour améliorer votre expérience.
En savoir plus.