BookmarkSubscribeRSS Feed

PROC TABULATE 활용예제

Started Friday by
Modified Saturday by
Views 39

 

PROC TABULATE

PROC TABULATE는 요약 통계 테이블을 만드는데 사용하는 SAS의 Syntax입니다.

아래와 같은 특징을 가지고 있습니다.

  • 다차원 교차표 생성: 여러 변수들의 교차분석이 가능합니다.

  • 행/렬/페이지의 조합 : 2-3차원 테이블까지 생성가능합니다.

  • 통계량 출력 - SUM(합계), MEAN(평균), MIN/MAX(최소/최대), STD(표준편차), 비율(PCTN, PCTSUM)등을 출력할 수 있습니다.

  • PROC REPORT 와 비슷한 기능이지만 수치 요약에는 PROC TABULATE가 특화되어 있습니다.

■ 기본 Syntax

 

PROC TABULATE data=데이터셋 옵션들;
    CLASS 범주형변수들;    
    VAR 연속형변수들;      
    TABLE 행차원, 열차원;   
RUN;

 

 

  • CLASS 범주형 변수 : 테이블 차원을 구성한 변수 (여러개의 변수 입력 가능)

  • VAR 연속형 변수: 통계량을 계산할 변수 (여러개의 변수 입력 가능)

  • TABLE 행차원, 열차원: 테이블의 구조를 정의

테이블의 행/열 차원은 연산자를 사용해서 테이블의 구조를 정의할 수 있습니다.

* : 교차 연산자로 모든 조합이 가능합니다.

+: 연결(Concatenate)로 나란히 배치가 가능합니다.

() 그룹핑으로 여러 요소를 묶을 수 있습니다.

■ 사용예제

 

PROC TABULATE data = test2 missing;
class ageatstart sex weight_status;
var weight;
table ageatstart * weight_Status, sex * (weight*mean);
run;

 

 

이전 게시글 사용자 정의 포맷 1  에서 생성한 TEST2 데이터를 활용합니다.

 

 

MISSING: 결측값도 테이블에 포함시킨다라는 의미입니다.

CLASS: 범주형 변수들을 지정합니다. 테이블의 행과 열을 구성하는 변수들로서 AGESTART(시작연령), SEX(성별), WEIGHT_STATUS(체중상태)는 범주형 변수들로 지정합니다.

VAR: 분석할 연속형 변수를 지정함으로서 통계량을 계산할 변수들을 지정합니다.

즉, 행에는 성별(Sex) 열에는 나이*키*몸무게의 평균/표준편차/개수가 정리된 표가 출력됩니다.

행: 시작연령/ 체중상태의 교차 조합으로 행을 구성하고

열: 성별별로 체중의 평균값을 열로 표시합니다.

 

image.png

 

Contributors
Version history
Last update:
Saturday
Updated by:

hackathon24-white-horiz.png

Join the 2025 SAS Hackathon!

Calling all data scientists and open-source enthusiasts! Want to solve real problems that impact your company or the world? Register to hack by August 31st!

Register Now

Article Tags