Publié le :
Macro SASHELP

Utilisation de listes de variables macro SAS pour créer des programmes dynamiques basés sur les données

Ce code est également disponible en : Deutsch English Español
Cet atelier pratique (Exercice 02) vise à démontrer comment créer une variable macro dynamique à partir de données existantes. L'objectif est d'extraire le poids d'une 'Acura MDX' à partir de la table SASHELP.CARS en utilisant la clause INTO de PROC SQL et de stocker cette valeur dans une variable macro appelée MDX_WEIGHT. Le contenu de la variable macro est ensuite vérifié en l'affichant dans le log SAS©.
Analyse des données

Type : SASHELP


Les données d'entrée proviennent de la table SASHELP.CARS, une bibliothèque SAS intégrée qui contient des informations sur différentes marques et modèles de voitures.

1 Bloc de code
PROC SQL
Explication :
Ce bloc utilise la procédure SQL pour interroger la table SASHELP.CARS. Il sélectionne la colonne 'weight' pour toutes les entrées où 'make' est 'Acura' et 'model' est 'MDX'. La valeur trouvée est ensuite stockée dans une variable macro nommée MDX_WEIGHT. L'option `trimmed` supprime les espaces blancs inutiles, et `noprint` empêche l'affichage de la sortie de la requête dans la fenêtre de sortie.
Copié !
1PROC SQL noprint;
2 select weight into :MDX_WEIGHT trimmed
3 from sashelp.cars
4 where strip(make)='Acura' and strip(model)='MDX';
5QUIT;
2 Bloc de code
MACRO/OPTIONS
Explication :
Ce bloc de code sert à vérifier le succès de la création de la variable macro. `options nosource` désactive l'affichage du code SAS dans le log, tandis que `options source` le réactive. Entre ces deux options, la macro `%put` est utilisée pour afficher une chaîne de caractères formatée dans le log SAS, incluant la valeur de la variable macro MDX_WEIGHT, permettant ainsi de confirmer sa valeur.
Copié !
1* Verify the contents of the new macro variable by printing to the SAS log.;
2options nosource;
3%put ===================================;
4%put The weight of an Acura MDX is &MDX_WEIGHT..;
5%put ===================================;
6options SOURCE;
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 : HANDS-ON WORKSHOP, Title: Using SAS Macro Variable Lists to Create Dynamic Data-Driven Programs, Instructor: Josh Horstman, Exercise: 02