통계학을 공부할때 가끔 필요한 것이 샘플링이다.
샘플링은 샘플수에 따른 비용을 고려하여 여러가지 방법이 있는데 이런 복잡한 샘플링 방법을 명령어 몇 줄이면 SAS에서 가능하다. 여기서는 간단히 복원과 비복원 심플랜덤샘플링을 하는 법만 설명해둔다. 이것을 알면 혹시 북스트래핑할 때 아주 유용하게 이것을 이용할 수 있다. 프로그램밍이 시간이 많이 들어가니 기억해 두자.

1. 비복원  단순 랜덤 새플링 (Simple ramdom sampling without replacement )

method=srs 이라고 하면 method 옵션을 srs라고 준 것으로 비복원 심플랜덤샘플링을 하라고 하는 명령이다. 아래 명령어는 데이타 셋 Customers로 부터 100개의 샘플을 비복원으로 뽑아서 SampleSRS 에 저장하라는 말이 된다.

proc surveyselect data=Customers method=srs n=100 out=SampleSRS;
run;

2. 복원 단순 랜덤 샘플링  (Simple ramdom sampling witht replacement )

위의 명령어에서  method옵션을 urs ( unspecified random sampling)이라고 주면 간단히 복원랜덤추출법이 된다. 설명은 위와 같다.

proc surveyselect data=Customers method=urs n=100 out=SampleSRS;
run;

3. 층화추출 샘플링(Stratified Random Sampling)

층화추출을 층(stratum)간 분산은 크고(heterogeneous), 층(stratum)내 분산은 작을때(homogeneous)할때 사용하는 샘플링방법입니다. 이런 층화추출 샘플링을 사용하기 위해서는 반드시SAS에서는 starata에 대해서 sorting를 먼저하고 명령어를 사용해야 합니다.  아래 예제 프로그램은 state 와 type 변수에 따른 층화추출방법입니다.

   proc sort data=Customers;
      by State Type;
   run;

   proc surveyselect data=Customers method=srs n=15
         out=SampleStrata;
      strata State Type;
   run;

그리고  SAS에서는  좀더 고급의 샘플링 방법도 처리가 가능합니다.

• Proportional Allocation - 각각의 stratum(층)의 전체 모집단의 비율에 따라 각 stratum에 샘플수를 할당하는 방법

• Optimal Allocation- stratum sizes, stratum variances, stratum costs 을 고려한 샘플링

• Neyman Allocation - stratum sizes과 stratum variances 를 고려한 샘플링

따라서 옵션에 위에 필요한 변수들을 할당할 것을 SAS에서는 요구합니다.

자세한 것은 아래 링크를 참조하세요.
http://support.sas.com/documentation/cdl/en/statug/63033/HTML/default/viewer.htm#statug_surveyselect_sect011.htm

Posted by wishart
,