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 34 35 36 37 38
|
DATA table1 ;
input nom $ var2004 var2005 var2006 var2007 ;
cards ;
etu1 1 2 2 2
etu2 1 2 3 4
etu3 1 3 1 2
run ;
data table2 (keep=cpt:) ;
set table1 end=fin ;
array etu(*) var2004-var2007 ;
array cpt(4,4) (16*0); /* initialisation à zéro la matrice compteur */
do i=1 to 3 ; /* Nombre des variables moins 1 */
do m=1 to 4 ;
do n=1 to 4 ;
if etu(i)=m and etu(i+1)=n then cpt(m,n)=cpt(m,n)+1 ;
end ;
end ;
end ;
if fin then output ;
run ;
/* Construction du tableau croisé */
data table3 (keep=val: nobs) ;
retain nobs val: ;
set table2 ;
array cpt(4,4) ;
array val(4) ;
do m=1 to 4;
do n=1 to 4;
nobs=m ;
val(n)=cpt(m,n) ;
end ;
output ;
end ;
run ; |
Partager