Publié le :
ETL CREATION_INTERNE

Création et Affichage de Données de Notes Scolaires

Ce code est également disponible en : Deutsch English Español
En attente de validation
Le script se décompose en cinq sections logiques, chacune créant une table de données (Grades1 à Grades5) et l'affichant. La première section montre la création et l'affichage simple. Les sections suivantes introduisent l'utilisation de l'instruction VAR dans PROC PRINT pour sélectionner et ordonner les colonnes. Une section démontre comment calculer une nouvelle variable (totalscores) au sein d'un DATA STEP. La dernière section montre comment modifier la valeur d'une colonne existante. Ce script est un bon exemple pour les débutants qui apprennent les fondamentaux du DATA STEP et de la procédure PRINT.
Analyse des données

Type : CREATION_INTERNE


Toutes les données sont créées et intégrées directement dans le script SAS à l'aide de l'instruction `DATALINES` au sein de chaque DATA STEP. Aucune source de données externe n'est requise ou utilisée.

1 Bloc de code
DATA STEP Data
Explication :
Ce bloc de code crée une table SAS nommée `Grades1`. L'instruction `input` définit la structure des données en lisant les variables à partir de positions de colonnes spécifiques. Les données sont fournies directement dans le code via `DATALINES`.
Copié !
1DATA Grades1;
2 INPUT subj 1-4 name $ 5-23 sex exam1 exam2 exam3 exam4 exam5 project finalexam;
3 DATALINES;
41011 Alia Bhatt 2 100 65 83 84 99 91 96
51012 Maria Smith 1 78 82 86 . 100 95 97
61111 Thomas Jones 2 88 81 96 69 91 90 98
71121 Benedictine Arnold 2 68 82 82 89 89 93 99
81301 Trisha Gupta 1 51 69 79 59 85 64 100
9;
10RUN;
2 Bloc de code
PROC PRINT
Explication :
Cette procédure affiche l'intégralité du contenu de la table `Grades1` dans la fenêtre de sortie des résultats.
Copié !
1PROC PRINT DATA=Grades1;
2RUN;
3 Bloc de code
DATA STEP Data
Explication :
Crée une deuxième table `Grades2`, identique à `Grades1`, pour démontrer une fonctionnalité d'affichage différente.
Copié !
1DATA Grades2;
2 INPUT subj 1-4 name $ 5-23 sex exam1 exam2 exam3 exam4 exam5 project finalexam;
3 DATALINES;
41011 Alia Bhatt 2 100 65 83 84 99 91 96
51012 Maria Smith 1 78 82 86 . 100 95 97
61111 Thomas Jones 2 88 81 96 69 91 90 98
71121 Benedictine Arnold 2 68 82 82 89 89 93 99
81301 Trisha Gupta 1 51 69 79 59 85 64 100
9;
10RUN;
4 Bloc de code
PROC PRINT
Explication :
Affiche la table `Grades2`. L'instruction `var` est utilisée pour sélectionner spécifiquement les colonnes à afficher et définir leur ordre.
Copié !
1 
2PROC PRINT
3DATA=Grades2;
4var name exam1 exam2 exam3 exam4 project finalexam;
5RUN;
6 
5 Bloc de code
DATA STEP Data
Explication :
Crée une troisième table `Grades3` pour illustrer une autre variation de l'affichage des colonnes.
Copié !
1DATA Grades3;
2 INPUT subj 1-4 name $ 5-23 sex exam1 exam2 exam3 exam4 exam5 project finalexam;
3 DATALINES;
41011 Alia Bhatt 2 100 65 83 84 99 91 96
51012 Maria Smith 1 78 82 86 . 100 95 97
61111 Thomas Jones 2 88 81 96 69 91 90 98
71121 Benedictine Arnold 2 68 82 82 89 89 93 99
81301 Trisha Gupta 1 51 69 79 59 85 64 100
9;
10RUN;
6 Bloc de code
PROC PRINT
Explication :
Affiche la table `Grades3` et utilise l'instruction `var` pour réordonner les colonnes dans un ordre différent de leur ordre naturel dans la table.
Copié !
1 
2PROC PRINT
3DATA=Grades3;
4var name project finalexam exam1 exam2 exam3 exam4;
5RUN;
6 
7 Bloc de code
DATA STEP Data
Explication :
Crée la table `Grades4`. Une nouvelle variable `totalscores` est calculée en additionnant les scores des examens, du projet et de l'examen final. Notez que si une des variables du calcul est manquante ('.') comme pour 'Maria Smith', le résultat de `totalscores` sera manquant.
Copié !
1DATA Grades4;
2 INPUT subj 1-4 name $ 5-23 sex exam1 exam2 exam3 exam4 exam5 project finalexam;
3 totalscores = exam1 + exam2 + exam3 + exam4 + exam5 + project + finalexam;
4 DATALINES;
51011 Alia Bhatt 2 100 65 83 84 99 91 96
61012 Maria Smith 1 78 82 86 . 100 95 97
71111 Thomas Jones 2 88 81 96 69 91 90 98
81121 Benedictine Arnold 2 68 82 82 89 89 93 99
91301 Trisha Gupta 1 51 69 79 59 85 64 100
10;
11RUN;
8 Bloc de code
PROC PRINT
Explication :
Affiche la table `Grades4`, en incluant la nouvelle colonne calculée `totalscores` pour vérifier le résultat du calcul.
Copié !
1 
2PROC PRINT
3DATA=Grades4;
4var name exam1 exam2 exam3 exam4 project finalexam totalscores;
5RUN;
6 
9 Bloc de code
DATA STEP Data
Explication :
Crée la table `Grades5`. Dans ce DATA STEP, la valeur de la variable existante `exam2` est modifiée en lui ajoutant 1 pour chaque observation.
Copié !
1DATA Grades5;
2 INPUT subj 1-4 name $ 5-23 sex exam1 exam2 exam3 exam4 exam5 project finalexam;
3 exam2 = exam2 + 1;
4 DATALINES;
51011 Alia Bhatt 2 100 65 83 84 99 91 96
61012 Maria Smith 1 78 82 86 . 100 95 97
71111 Thomas Jones 2 88 81 96 69 91 90 98
81121 Benedictine Arnold 2 68 82 82 89 89 93 99
91301 Trisha Gupta 1 51 69 79 59 85 64 100
10;
11RUN;
10 Bloc de code
PROC PRINT
Explication :
Affiche la table `Grades5` pour visualiser le résultat de la modification effectuée sur la colonne `exam2`.
Copié !
1 
2PROC PRINT
3DATA=Grades5;
4var name exam1 exam2 exam3 exam4 project finalexam ;
5RUN;
6 
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.
Banner
Le Conseil de l'Expert
Expert
Stéphanie
Spécialiste Machine Learning et IA.
« Ce script constitue la pierre angulaire de tout apprentissage sur SAS. Il illustre parfaitement le flux de travail standard : la lecture de données brutes, leur transformation logique dans l'étape DATA, et leur restitution via la procédure PRINT. »