SAS연습200제/확률분포와통계적분석기법
Q_09_03. 난수를 만들어 표본을 추출하기 - UNIFORM( ) 함수 이용
sas
2025. 3. 28. 20:03
SAS에서 UNIFORM 함수를 사용하여 난수를 생성하고 이를 통해 표본을 추출할 수 있습니다. UNIFORM 함수는 0과 1 사이의 균등분포를 따르는 난수를 생성하며, 이를 기반으로 원하는 크기의 표본을 추출할 수 있습니다.
다음은 UNIFORM 함수를 사용하여 표본을 추출하는 예제입니다.
data my_data;
input id value;
datalines;
1 10
2 15
3 20
4 25
5 30
6 35
7 40
8 45
9 50
10 55
;
run;
data sample_data;
set my_data;
if uniform(12345) < 0.3; /* 30% 확률로 표본 추출 */
run;
proc print data=sample_data;
run;
코드 설명
- DATA my_data;: 원본 데이터를 정의합니다.
- id와 value 변수로 구성된 데이터를 생성합니다.
- DATA sample_data;: 표본을 추출할 새로운 데이터셋을 생성합니다.
- IF UNIFORM(12345) < 0.3;: UNIFORM 함수를 사용하여 각 행에서 0과 1 사이의 난수를 생성하고, 30% 확률(0.3)로 표본을 추출합니다.
- 12345는 시드값으로, 이를 변경하면 다른 난수 시퀀스를 생성할 수 있습니다.
- 0.3을 다른 값으로 설정하여 추출 비율을 조정할 수 있습니다.
- PROC PRINT DATA=sample_data;: 추출된 표본을 확인합니다.
결과
이 방법을 사용하면 원본 데이터에서 지정된 비율(예: 30%)에 따라 무작위로 표본을 추출할 수 있습니다.