Publié le :
Statistique CREATION_INTERNE

Analyse de l'efficacité de médicaments contre la lèpre

En attente de validation
Le script commence par créer un jeu de données 'drugtest' contenant les résultats de tests bactériologiques avant et après traitement pour trois médicaments. Ensuite, un modèle linéaire général (PROC GLM) est appliqué pour modéliser le score post-traitement en fonction du médicament et du score pré-traitement. Les moyennes des moindres carrés (LSMeans) sont calculées pour chaque médicament et sauvegardées dans une table. Cette table est ensuite enrichie avec des URLs spécifiques à chaque médicament. Un premier graphique à barres (PROC SGPLOT) est généré pour comparer les LS-Means des médicaments ; chaque barre est un hyperlien. En cliquant sur une barre, l'utilisateur est redirigé vers une page HTML contenant un nuage de points (généré par un second PROC SGPLOT) qui détaille la relation entre les scores pré et post-traitement pour le médicament sélectionné. L'ensemble du processus utilise ODS (Output Delivery System) pour créer une série de rapports HTML liés.
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. L'option '@@' est utilisée dans l'instruction INPUT pour lire plusieurs observations à partir d'une seule ligne de données.

1 Bloc de code
DATA STEP Data
Explication :
Ce bloc DATA STEP crée la table 'drugtest'. Il lit les données intégrées via l'instruction DATALINES. L'indicateur '@@' à la fin de l'instruction INPUT permet de lire plusieurs observations (triplets Drug, PreTreatment, PostTreatment) qui se trouvent sur la même ligne physique dans les données.
Copié !
1title 'Treatment of Leprosy';
2 
3DATA drugtest;
4 INPUT Drug $ PreTreatment PostTreatment @@;
5 DATALINES;
6a 11 6 a 8 0 a 5 2 a 14 8 a 19 11
7a 6 4 a 10 13 a 6 1 a 11 8 a 3 0
8d 6 0 d 6 2 d 7 3 d 8 1 d 18 18
9d 8 4 d 19 14 d 8 9 d 5 1 d 15 9
10f 16 13 f 13 10 f 11 18 f 9 5 f 21 23
11f 16 12 f 12 5 f 12 16 f 7 1 f 12 20
12;
13 
2 Bloc de code
PROC GLM
Explication :
Cette procédure applique un Modèle Linéaire Général (GLM). Elle modélise la variable 'PostTreatment' en fonction de la variable de classification 'drug', de la variable continue 'PreTreatment' et de leur interaction. L'instruction 'lsmeans' calcule les moyennes des moindres carrés pour chaque 'drug', et 'ods output' sauvegarde ces résultats dans une nouvelle table SAS nommée 'lsmeans'.
Copié !
1PROC GLM DATA=drugtest;
2 class drug;
3 model PostTreatment = drug | PreTreatment / solution;
4 lsmeans drug / stderr pdiff;
5 ods OUTPUT LSMeans=lsmeans;
6QUIT;
3 Bloc de code
DATA STEP Data
Explication :
Ce bloc modifie la table 'lsmeans' générée précédemment. Il ajoute une nouvelle colonne, 'DrugClick', qui contient le nom d'un fichier HTML. Cette colonne servira à créer des liens hypertextes dans le graphique qui suit.
Copié !
1DATA lsmeans;
2 SET lsmeans;
3 IF drug='a' THEN DrugClick='drug1.htm';
4 IF drug='d' THEN DrugClick='drug2.htm';
5 IF drug='f' THEN DrugClick='drug3.htm';
6RUN;
4 Bloc de code
PROC SGPLOT
Explication :
Ce bloc génère un graphique à barres horizontales. Il utilise les données de la table 'lsmeans' pour représenter la moyenne des moindres carrés ('lsmean') pour chaque médicament ('drug'). L'option 'imagemap=yes' et le paramètre 'url=drugclick' sur l'instruction 'hbar' rendent chaque barre cliquable, pointant vers le fichier HTML défini dans la variable 'DrugClick'.
Copié !
1ods graphics / imagemap=yes height=2in width=6.4in;
2 
3PROC SGPLOT DATA=lsmeans;
4 title 'Chart of LS-Means for Drug Type';
5 hbar drug / response=lsmean stat=mean
6 url=drugclick;
7 footnote j=l 'Click on the bar to see a plot of PostTreatment '
8 'versus PreTreatment for the corresponding drug.';
9 FORMAT lsmean 6.3;
10RUN;
11 
12ods graphics off;
13footnote;
5 Bloc de code
PROC SGPLOT
Explication :
Cette dernière étape génère les rapports détaillés. La procédure SGPLOT crée un nuage de points comparant 'PostTreatment' à 'PreTreatment'. L'instruction 'by drug' génère un graphique distinct pour chaque médicament. L'instruction 'ods html newfile=page' garantit que chaque graphique est écrit dans un fichier HTML séparé (drug1.htm, drug2.htm, etc.), qui sont les cibles des liens du graphique à barres.
Copié !
1ods html body='drug1.htm' newfile=page style=HTMLBlue;
2 
3PROC SGPLOT DATA=drugtest;
4 title 'Plot of PostTreatment versus PreTreatment';
5 scatter y=PostTreatment x=PreTreatment;
6 BY drug notsorted;
7RUN;
8 
9ods html close;
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