Bonjour à tous,
Dans le cadre d'un de mes projets, j'ai besoin de récupérer dans une macro-variable, la valeur d'une variable contenue dans une table SAS (ici "titres")
Dans la table ci-dessus, pour chaque dl, je souhaite récupérer un par un chaque valeur de titres.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 data test; input dl $ titres $ recence @@; cards; 1 100 3 1 101 4 1 102 1 2 100 9 2 110 3 2 105 7 ; run;
Pour cela j'utilise un data :
Quand ma valeur est récupérée grâce au Symput, je souhaite créer une variable commençant par "top_ha_" suivi de la valeur récupérée avec le symput.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 proc sort data=test; by dl titres; run; data test; set test; by dl titres; if first.dl then do; /*pour le premier dl*/ if first.titres then do; /*pour le premier titre*/ call symput("titre",titres); /*récupération de la valeur du titre*/ %put titres : &titre; top_ha_&titre=rec; /*création d'une variable dans la table*/ end; end; run;
J'espère être compréhensible! :p
Pour essayer d'être claire obtenir pour la première ligne la table suivante :
dl titres rec top_ha_100
1 100 3 3
N'hésitez pas si vous avez des questions.
Merci d'avance
Partager