Dichotomie sous sas

Fermé
hassu - 25 avril 2008 à 15:16
 namouss9310 - 5 août 2008 à 10:02
Bonjour,
aidez moi SVP j'ai une base que je veus diviser en 10 (SOUS SAS) de maniere aléatoire ,
pour l'instant j'arrive juste à la diviser en deux!!
voila le programme:

data base1 base2;
set base*base en entré;
if (&totale +1-_n_)*ranuni(&seed) <= (&totale/2 - _c01) then do;
_c01 + 1;
output base1;
end;
else do;
_c02 + 1;
output base2;
end;
run;
merci de votre aide

2 réponses

Hello,

Tu peux tenter un truc comme ça et ça peut s'optimiser en passant par une macro :


data tab;
set tab;
alea=ranuni(12345);
run;

proc sort data=tab;
by alea;
run;
data tab;
set tab;
n=_N_;
run;
proc rank data=tab groups=10 out=tab_fin;
var n;
run;

data tab1 tab2 tab3 tab4 ...;
set tab_fin;
n=n+1;
if n=1 then output tab1;
if n=1 then output tab2;
....
run;
0
slt,
merci pr tn aide
0
Bonjour hassu,

j'aurais besoin de ton aide stp, je souhaiterais savoir si tu as programmé la dichotomie en sas ?
0