일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- DeepLearning
- 답변
- 매크로
- 세상
- 한국어
- TensorFlow Tutorials
- Artificil Intelligence
- 행복
- cs231n
- neural networks
- 꿈
- openai
- machine learning
- SQL
- 머신러닝
- 번역
- 신경망
- 강화학습
- Hvass-Lab
- SAS
- 질문
- tutorials
- deep learning
- 딥러닝
- Andrej Karpathy
- 인공지능
- Tutorial
- Reinforcement Learning
- tensorflow
- 사랑
- Today
- Total
Economics & Deeplearning
샘플링 질문입니다. 본문
만약 남자 여자가 각각 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;
'SAS > SAS 질문과 답변' 카테고리의 다른 글
데이터 필터링 질문입니다. 도와주세요.... (0) | 2016.02.21 |
---|---|
데이터의 순서매기는 방법 좀 알려주세요~ (0) | 2016.02.21 |
macro 이용하여, 여러 개의 자료를 동시에 sort하고자 합니다. (0) | 2016.02.21 |
변수안에 숫자형데이터가 있는데.. 정수가 아닌 소숫점이 포함된 데이터만 작업하기. (0) | 2016.02.21 |
관측치끼리 비교하는 문. (0) | 2016.02.21 |