Bonjour,
j'aimerais utiliser proc transpose pour mettre à plat c'est à dire au niveau ménage une table au niveau individu;
voici le programme et ce que j'obtiens pour le moment.
le résultat obtenu ne me convient pas tout à fait,
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
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33 data essai; input id $5. sexe age date_naiss date9. prenom $20. ; format date_naiss date9. ; datalines; ID_13 1 60 04APR1954 THOMAS ID_13 2 59 25FEB1953 Beatrice ID_13 1 26 29FEB1988 Nicolas ID_14 1 24 01JAN1990 Alain ID_15 2 34 31AUG1980 AGNES ID_15 1 40 07SEP1974 Hubert ; run; proc print data=essai;run; proc transpose data=essai out= T_essai; by id;run; proc print data=T_essai;run; /* Obs id _NAME_ COL1 COL2 COL3 1 ID_13 sexe 1 2 1 2 ID_13 age 60 59 26 3 ID_13 date_naiss -2098 -2501 10286 4 ID_14 sexe 1 . . 5 ID_14 age 24 . . 6 ID_14 date_naiss 10958 . . 7 ID_15 sexe 2 1 . 8 ID_15 age 34 40 . 9 ID_15 date_naiss 7548 5363 . */
j'aimerais avoir un résultat du style:
ID sexe_1 sexe_2 sexe_3 age_1 age_2 age_3 date_naiss_1 date_naiss_2 date_naiss_3 prenom_1 prenom_2 prenom_3
ID_13 1 2 1 60 59 26 04APR1954 25FEB1953 29FEB1988 THOMAS Beatrice Nicolas
ID_14 1 . . 24 . . 01JAN1990 . . Alain
ID_15 2 1 . 34 40 . 31AUG1980 07SEP1974 . AGNES Hubert
Peut on arriver à ce résultat avec proc transpose ou autre solution ...
D'avance merci.
Partager