|
data a1;
set sashelp.class(obs=16);
keep name age;
run;
data a2;
set sashelp.class(obs=8);
keep name age;
run;
%macro survey(indata1=,indata2=,id=,seed=,rate1=,rate2=,re=);
data birth_data1;
set &indata2.;
run;
data mean;
format order mean std 8.;
delete;
run;
%do i=1 %to &re.;
proc sort data=&indata1. ;by &id.;run;
proc surveyselect data=&indata1.
method=srs
rate=&rate1.
seed=&seed.
out=sample1
outall;
run;
proc sort data=birth_data1;by &id.; run;
proc surveyselect data=birth_data1
method=srs
rate=&rate2.
seed=&seed.
out=sample2
outall;
run;
data birth_data1;
set sample1(where=(Selected=1))
sample2(where=(Selected=0));
drop selected;
run;
proc means data=birth_data1 noprint;
output out=aa n=n mean=mean std=std;
run;
data mean ;
set mean
aa(in=a);
if a then order=&i.;
keep order mean std;
run;
%end;
%mend;
%survey(indata1=a1,indata2=a2,seed=20140324,id=name,rate1=0.25,rate2=0.5,re=1000);
|