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) 열에는 나이*키*몸무게의 평균/표준편차/개수가 정리된 표가 출력됩니다.
행: 시작연령/ 체중상태의 교차 조합으로 행을 구성하고
열: 성별별로 체중의 평균값을 열로 표시합니다.
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!