Advertisement
Guest User

Untitled

a guest
Nov 23rd, 2017
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SAS 3.49 KB | None | 0 0
  1. /*
  2.  * Exercice 2.2 Examens physiques
  3.  */
  4.  
  5. /*
  6.  * Recupere les lignes ou la taille n'est pas vide et garde uniquement le usubjid et la taille
  7.  */
  8. Data donnees.peRes;
  9.     set donnees.physical_exam;
  10.     where hgt is not null;
  11.     keep usubjid hgt;
  12. run;
  13.  
  14. /*
  15.  * Recupere les lignes ou le poids n'est pas vide et garde uniquement le usubjid et le poids
  16.  */
  17. Data donnees.peRes2;
  18.     set donnees.physical_exam;
  19.     where wgt is not null;
  20.     keep usubjid wgt;
  21. run;
  22.  
  23. /*
  24.  * Recupere toutes les lignes mais ne conserve que le usubjid, la date de visite et l'id de cette derniere
  25.  */
  26. Data donnees.date;
  27.     set donnees.date_of_visit;
  28.     keep usubjid visid visdt;
  29. run;
  30.  
  31. /*
  32.  * Proc sort necessaire pour la merge des trois tables
  33.  */
  34. proc sort data=donnees.peRes2;
  35.     by usubjid;
  36. run;
  37.  
  38. proc sort data=donnees.peRes;
  39.     by usubjid;
  40. run;
  41.  
  42. proc sort data=donnees.date;
  43.     by usubjid;
  44. run;
  45.  
  46.  
  47. /*
  48.  * Fusionne les trois tables crées précedemment
  49.  */
  50. Data donnees.mPeRes;
  51.     Merge donnees.peRes
  52.           donnees.peRes2
  53.           donnees.date;
  54.     by usubjid;
  55. run;
  56.  
  57. /*
  58.  * Tri la table créée précédemment par usubjid et date de visite
  59.  */
  60. Proc sort data= donnees.mPeRes;
  61. by usubjid descending visdt;
  62. run;
  63.  
  64. /*
  65.  * Supprime tous les doublons ne gardant que la premiere occurence de chaque patient qui correspoind a la derniere visite
  66.  */
  67. proc sort data=donnees.mPeRes nodupkey;
  68.    by usubjid;
  69. run;
  70.  
  71. /*
  72.  *Calcul l'IMC et la save dans la nouvelle colonne IMC dans la nouvelle table resIMC
  73.  */
  74. Data donnees.resIMC;
  75.     set donnees.mPeRes;
  76.     ATTRIB IMC
  77.             LABEL="Indice de masse corporelle"
  78.             LENGTH=5;
  79.     IMC=FLOOR(wgt/((hgt/100)*(hgt/100)));
  80. RUN;
  81.  
  82. Proc sort data=donnees.fusion_dm_treatment;
  83.     by usubjid;
  84. run;
  85.  
  86. /*
  87.  *Fusion des tables dm et resIMC
  88.  */
  89. Data donnees.peTemp;
  90.     merge donnees.fusion_dm_treatment
  91.           donnees.resimc;
  92.     by usubjid;    
  93. run;
  94.  
  95. data donnees.pe;
  96.     set donnees.peTemp;
  97.     keep trtcd imc sex age hgt wgt;
  98.     where imc is not null;
  99. Run;
  100.  
  101. proc sort data=donnees.pe;
  102.     by trtcd;
  103. run;
  104.  
  105. /*
  106.  * Calcul le coefficient de correlation de la variable IMC en les triants par numero de
  107.  * traitement
  108.  */
  109. TITLE "IMC moyen par groupe";
  110. proc corr data = donnees.PE plots;
  111.     var imc;
  112.     by trtcd;
  113. run;
  114.  
  115. /*
  116.  * Affiche le graphique des moyennes d'IMC par groupe
  117.  */
  118. proc sgplot data= donnees.PE;
  119.   VBAR TRTCD/ STAT=MEAN RESPONSE=IMC;
  120. run;
  121.  
  122. /*
  123.  *class:variable de tri
  124.  */
  125. /*Hypothese : Les resultats d'IMC dépendent du groupe de traitement.
  126.  
  127. Conclusion : dans 55% des cas les valeurs sont hors de la moyenne ont peu donc en conclure que
  128. l'hypothese est fausse et que l'IMC ne dépend pas du groupe de traitemment*/
  129.  
  130. proc anova data=donnees.PE;
  131.     class TRTCD;
  132.     model IMC=TRTCD;
  133. run;
  134.  
  135. /*
  136.  *Proc sort necessaire pour le proc means qui suit
  137.  */
  138. proc sort data=donnees.PE;
  139.     by trtcd sex;
  140. run;
  141.  
  142. /*
  143.  *Proc means affichant le min, max, la moyenne et l'ecart type de l'age, du poids, de la taille et de
  144.  *l'IMC en fonction du sexe pour chaque groupe
  145.  */
  146. Title "On remarque grâce a ces resultats qu'en moyenne, quelque soit le groupe, le poids et la taille sont des hommes est superieur a celle des femmes.
  147.        Pour ce qui est des autres variables on voit que la moyenne des hommes et des femmes est toujours plus ou la meme";
  148. proc means data=donnees.PE maxdec=2;
  149.      var age wgt hgt imc;
  150.      class trtcd sex;
  151.      OUTPUT out=donnees.stat_PE max=max min=min mean=moyenne std=ecart_type;
  152. run;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement