부트스트랩이란, 시뮬레이션에서 모수를 추정하는 방법입니다.
즉, 갖고 있는 n개의 데이터에서 같은 크기의 재표본을 몇 번 반복하고 복원 추출해서 그 재표본된 데이터의 통계량으로 모수를 추정합니다.
(=모집단에서 확률분포를 가정할 수 없어도 모수를 추정할 수 있게합니다.)
소표본의 경우에 모수의 추정을 가능하게 하는 방법입니다.
소표본에서 모수를 추정하게 되면, 정규성을 무리하게 가정하기 때문에 오차가 너무 커져서 신뢰구간이 너무 넓어서 정규분포의 신뢰성에 문제가 될 수 있습니다.
기존의 데이터에서 복원 추출을 반복하고 많은 재표본을 생성해나갑니다.
그리고 그 통계량에서 모수를 추정합니다.
통계학에서는 컴퓨터 시뮬레이션으로 알려진 몬테카를로 방법 중 하나이지만 실제로 있는 데이터를 재생성해 분포를 추정합니다.
Resampling
관측하여 얻은 데이터를 원표본이라고 하며 원표본은 모집단의 특성을 가지고 있습니다.
그래서 원래의 표본에서 추출한 데이터인 재표본도 모집단의 특징을 갖고 있습니다.
부트스트랩은 Resampling의 분포로 표본분포를 추정합니다.
원표본의 크기가 같은 복원추출법으로 재표본을 1000 ~ 2000회 정도 만들면 통계량의 값은 정규분포의 값은 의심하지 않을 정도로 값이 안정됩니다.
■ SAS
이번에는 SAS 데이터를 가지고 Bootstrap 방법을 통해서 모수를 추정해보겠습니다.
proc surveyselect data=sashelp.class method=urs out=test1 seed=123 samprate=1;
run;
proc means data=test1 mean;
var height;
run;
SASHELP의 Class 데이터는 총 19개의 데이터로 소표본입니다.
PROC SURVEYSELECT statement 는 표본 추출할 때 사용하는 프로시저입니다.
Method = URS는 Unspecified Random Sampling 으로 복원단순램덤샘플링으로 부트스트랩을 실행하는 실질적인 옵션으로 중복 표본 추출을 수행할 수 있습니다.
SAPRATE = 는 재표본화를 수행할 때 원본 데이터셋에서 추출한 표본 데이터의 비율로 원본 데이터셋에서 100%의 표본 데이터를 추출하여 재표본화를 수행하는 것 입니다.
즉, 원본 데이터셋과 같은 크기의 표본 데이터를 추출하는 것입니다.
그러므로 19개의 소데이터를 부트스트랩 방법으로 SASHelp의 Class 데이터에서 Height 변수의 평균을 구해보면, 63.4라는 것을 알 수 있습니다.
Join us for SAS Innovate 2025, our biggest and most exciting global event of the year, in Orlando, FL, from May 6-9.
Early bird rate extended! Save $200 when you sign up by March 31.