Dichotomie sous sas

hassu -  
 namouss9310 -
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
Configuration: Windows 2000
Internet Explorer 6.0

2 réponses

  1. lems
     
    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
    1. hassu
       
      slt,
      merci pr tn aide
      0
  2. namouss9310
     
    Bonjour hassu,

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