Economics & Deeplearning

샘플링 질문입니다. 본문

SAS/SAS 질문과 답변

샘플링 질문입니다.

이슈카 2016. 2. 21. 13:03

만약 남자 여자가 각각 7638명 3000명 있다고 한다면 이것을 

24:5의 비율로 맞추고자 합니다. 손으로 계산하면 일단 남자는 7638명 다 들어가고 

여자의 경우는 7638/24=318 ,  318*5=1590 이런식으로 나와서 결국 남자는 7638, 여자는 1590명으로 잡으면 됩니다. 


이것을 sas로 구현할수 있는 방법없을까요??


proc surveyselect strata는 24:5로 줘버리면 남자에서 24%를 뽀고 여자에서 5%를 뽑기때문에 절대 이런식으로 안나오고 그나마 구현한것은 


proc surveyselect data=test1 out=test2 method=srs

sampsize=1590; 

run;


이런식으로 해서 1590까지는 수기로 구한다음 이 1590명을 랜덤 샘플링하는것인데 이건 왠지 아닌거 같아서  ㅋㅋㅋㅋ

한큐에 해결할수 있는 방법 없을까요? 도와주세요 ㅠㅠ 감사합니다. 

================================================================================

data temp;
do i=1 to 7638;
sex=1;
output;
end;
do j=1 to 3000;
sex=2;
output;
end;
drop i j;
run;

data female;
set temp;
where sex=2;
run;

data female_withreplacement (drop=i sampsize);
sampsize=1590;
do i=1 to sampsize;
pickit=ceil(ranuni(0)*totobs);
set female nobs=totobs point=pickit;
output;
end;
stop;
run;

data female_withoutreplacement (drop=obsleft sampsize);
sampsize=1590;
obsleft=totobs;
do while (sampsize>0);
pickit+1;
if ranuni(0)<sampsize/obsleft then do;
set female point=pickit nobs=totobs;
output;
sampsize=sampsize-1;
end;
obsleft=obsleft-1;
end;
stop;
run;

Comments