Publié le :

Exemples de base SAS DATA et PROC

Ce code est également disponible en : Deutsch English Español
En attente de validation
Le script commence par une série de commentaires expliquant la structure d'un programme SAS©, la distinction entre les étapes DATA et PROC, ainsi que les règles syntaxiques comme l'utilisation des points-virgules et les déclarations globales. Il procède ensuite à la démonstration pratique :
1. Création d'un nouveau jeu de données 'myclass' à partir de 'sashelp.class', en ajoutant une colonne pour la taille en centimètres.
2. Affichage du contenu de 'myclass' avec PROC PRINT.
3. Calcul des statistiques descriptives (moyenne) pour 'age' et 'heightcm' avec PROC MEANS.
4. Une démonstration de la syntaxe condensée où l'espacement n'est pas critique, créant et affichant 'myclass1'.
5. Création d'un jeu de données 'under13' en filtrant 'sashelp.class' pour les individus de moins de 13 ans.
Analyse des données

Type : MIXTE


Les données source proviennent de la bibliothèque SASHELP (sashelp.class). De nouveaux jeux de données (myclass, myclass1, under13) sont créés et manipulés en interne au sein du script.

1 Bloc de code
DATA STEP Data
Explication :
Ce bloc DATA STEP crée un nouveau jeu de données appelé 'myclass'. Il lit les observations du jeu de données 'sashelp.class' et ajoute une nouvelle variable 'heightcm' en multipliant la variable 'height' existante par 2. 'run;' termine l'étape DATA.
Copié !
1DATA myclass;
2 SET sashelp.class;
3 heightcm=height*2;
4RUN;
2 Bloc de code
PROC PRINT
Explication :
Cette étape PROC PRINT affiche le contenu du jeu de données 'myclass' dans la fenêtre de résultats. C'est une procédure courante pour examiner rapidement les données.
Copié !
1PROC PRINT DATA=myclass;
2RUN;
3 Bloc de code
PROC MEANS
Explication :
Cette étape PROC MEANS calcule des statistiques descriptives (par défaut : N, moyenne, écart-type, min, max) pour les variables 'age' et 'heightcm' du jeu de données 'myclass'. 'var' spécifie les variables pour lesquelles les statistiques doivent être calculées.
Copié !
1PROC MEANS DATA=myclass;
2 var age heightcm;
3RUN;
4 Bloc de code
DATA STEP / PROC PRINT Data
Explication :
Ces deux lignes démontrent que SAS n'est pas sensible à l'espacement. Elles créent un jeu de données 'myclass1' identique à 'sashelp.class' et l'affichent immédiatement. C'est une version condensée des blocs précédents, illustrant la flexibilité de la syntaxe.
Copié !
1 
2DATA myclass1;
3SET sashelp.class;
4 
5RUN;
6PROC PRINT
7DATA=myclass1;
8 
9RUN;
10 
5 Bloc de code
DATA STEP Data
Explication :
Ce bloc DATA STEP crée un jeu de données 'under13' en sélectionnant uniquement les observations de 'sashelp.class' où la variable 'AGE' est inférieure à 13. La clause 'where' est utilisée pour le filtrage des observations. Les lignes avec des astérisques sont des commentaires SAS.
Copié !
1DATA under13;
2 SET sashelp.class;
3 where AGE<13;
4 *comment with * should be end with semicolon;
5 *drop heIGht Weight;
6RUN;
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.