Ca marche! 26 March 2007 / 15:15
%macro comp_par_2(an);
%let an_plus_1 =%eval(&an+1) ;
%let annee=%substr(&an,3,2);
%let annee_plus_1=%substr(&an_plus_1,3,2);
/*********************************************
CREATION DE LA TABLE DE COMPARAISON
POUR CHAQUE 2 ANS
*********************************************/
data t&annee._&annee_plus_1 ;
merge t&annee (in=a)
t&annee_plus_1 (in=b);
by siren;
/* Selection sur la première année */
SELECT ;
WHEN(paystg&annee=“”)
DO;
ind&annee=“-”;
END;
OTHERWISE
DO;
SELECT;
WHEN(paystg&annee=“061″)
DO;
ind&annee=“F”;
END;
OTHERWISE ind&annee=“I”;
END;
END;
END;
/* Selection sur la seconde année */
SELECT ;
WHEN(paystg&annee_plus_1=“”)
DO;
ind&annee_plus_1=“-”;
END;
WHEN (paystg&annee_plus_1 NE “”)
DO;
SELECT;
WHEN(paystg&annee_plus_1=“061″)
DO;
ind&annee_plus_1=“F”;
END;
OTHERWISE ind&annee_plus_1=“I”;
END;
END;
END;
/*Creéation de la variable diff : concaténation des indicatrices des 2 années*/
diff&annee._&annee_plus_1=ind&annee.||ind&annee_plus_1;
if a and b then output;
run;
TITLE “Evolution entre &an et &an_plus_1″;
proc freq data=t&annee._&annee_plus_1 ;
table diff&annee._&annee_plus_1 /missing;
run;
TITLE“”;
%mend;
/* Macro de boucle */
%macro boucle_an(debut, fin);
%do an = &debut %TO &fin %by 1;
%comp_par_2(&an);
%end;
%mend;
%boucle_an(1999,2003);
Je suis très content de moi! C’est fou comme la vie est faite de petits riens
TacTac 26 Mar / 15:42
Ca me rappelle les cours de Turbo-Pascal en prépa…
M. Fox 26 Mar / 17:30
Adoptez un Geek !
Thanos 26 Mar / 18:21
hum, sympathique ce billet, je sors ma casio huhu..
cyberaxe aka clawfire 26 Mar / 18:31
Excellent je vais ptet meme le compiler ^^
fiuuu 26 Mar / 18:45
huhuhuu, le C++ aussi ???
B. 26 Mar / 18:55
J’avais oublié pourquoi j’avais pris option “Jedi” plutôt qu’option “Info”…
Maintenant je me souviens bien: Ces trucs là, c’est pas pour moi!
ikare 26 Mar / 19:01
C’est du SAS!
)
Thanos 26 Mar / 19:48
Son Altesse Sérenissime?
quelle drôle de lecture pour un homo monsieur ikare
Yod’ah 26 Mar / 20:32
Très joli mais… c’est pour faire quoi au bout? Moi pas comprendre…
ikare 26 Mar / 22:27
@ Yod’ah > Alors c’est très simple : ça me permet de repérer la modification de statut d’une entreprise, les différents états étant indépendante, appartenant à un groupe français ou appartenant à un groupe international (hors France), et ce entre 2 années à chaque fois, pour la période que je souhaite (ici de 1999 à 2004)
Zigee 9 May / 15:12
Mince, moi qui croyait que c’était pour calculer l’effet du réchauffement de la planète sur l’orgasme de l’ours polaire en periode de rute les années bisextiles…
Dommage je vais devoir chercher encore un peu..