Bonjour,
J'ai un nouveau probleme qui me semble tres simple, j'ai une table de 30 series et je cherche a etudier les propriétés d'un composite constitué de 3, 4 ou 5 de ces series, (c'est a dire que je somme les séries concernées pour obtenir une serie agrégée)).
Mon problème vient de ce que je voudrais pouvoir automatiser le procédé, c'est a dire ecrire une macro qui prend en argument la table des 30 séries et un "vecteur" contenant la liste des séries qui m'intéressent (je peux ainsi en changer a loisir).
Exemple :
pour agréger les séries 3 6 8 et 9
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 %macro AGREGE (Table,vect); DATA Cli; SET &Table; Newvar=0; %do i=1 %to dim(&vect); Newvar=Newvar+F&vect(&i)/dim(&vect); %end KEEP Newvar; RUN; %mend; %agrege(exemple, (3,6,8,9));
Seulement l'objet array ne s'utilise pas comme ça et ne correspond apparemment pas a un vecteur d'entiers comme ça peut l'etre dans un langage de programmation, avec quel objet SAS peut il gérer ce genre de problème?
Merci de votre aide,
Cordialement,
Stephanie
Partager