PROC TABULATE 문은 교차표뿐 아니라 다양한 형태의 통계형 요약 테이블을 만들 수 있습니다.
교차표란(Cross-Tabulation) 이란, 두 개 이상의 범주형 변수를 교차시켜 변수 간의 관계 및 빈도수를 표로 나타내는 방법입니다.
예를 들면, 남/여 * 오른손/왼손잡이 조합별 관측치 개수를 확인할 수 있습니다.
특정 변수의 값이 다른 변수의 값에 따라 어떻게 달라지는지 확인할 수도 있으며 두 변수 사이의 연관성을 분석할 수 있습니다. (독립성 / 상관성)
교차표 예시
https://en.wikipedia.org/wiki/Contingency_table
PROC TABULATE DATA= ... ;
CLASS ... ;
VAR ... ;
TABLE ... ;
RUN;
DATA = : 분석할 데이터 셋
CLASS : 범주형 변수 설정합니다. 교차표의 행과 열을 구성하는 범주형 변수입니다.
VAR: 수치형 변수를 설정합니다.
TABLE: 행과 열의 구조로 교차표의 형태를 설정할 수 있습니다.
활용 데이터는 sale.xlsx입니다.
판매 데이터는 2,999개의 매출 데이터로 21개의 칼럼으로 구성되어 있습니다.
Row_ID : 행 번호 (단순 식별자)
Order_ID : 주문 번호
Order_Date : 주문 날짜
Order_Quantity : 주문 수량
Sales : 매출 금액
Discount : 할인율
Ship_Mode : 배송 방식 (예: Regular Air)
Profit : 이익
Unit_Price : 단가
Shipping_Cost : 배송비
Customer_Name : 고객 이름
Province : 고객 지역 (예: Alberta, Ontario)
Customer_Segment : 고객 세그먼트 (예: Consumer, Corporate, Home Office)
Product_Category : 제품 카테고리 (예: Furniture)
Product_Sub_Category : 세부 카테고리 (예: Office Furnishings)
Product_Name : 제품명
Product_Container : 제품 포장 방식 (예: Small Box, Medium Box)
Product_Base_Margin : 제품 기본 마진율
Ship_Date : 배송 날짜
customer_id : 고객 ID (숫자형)
product_id : 제품 ID (숫자형)
PROC TABULATE DATA = SALE;
CLASS PROVINCE SHIP_MODE;
VAR SALES SHIPPING_COST;
TABLE PROVINCE*(ALL SHIP_MODE) ALL,
N SALES*(SUM MEAN) SHIPPING_COST*(SUM MAX MIN);
RUN;
위 코드는 지역(Province)별, 배송방법(Ship_Mode)별 매출 현황을 알 수 있는 코드입니다.
CLASS
PROVINCE(지역; Alberta, British Columbia, ... )와 SHIP_MODE(배송방법; All, Ship_Mode, Delivery Truck, Express Air, Regular Air)를 범주형 변수로 지정합니다.
VAR
SALES(매출금액)와 SHIPPING_COST(배송비)를 분석 대상으로 삼고 수치형 변수로 설정합니다. SALES 변수와 SHIPPING_COST 변수들에 대해서 통계량을 계산할 수 있습니다.
TABLE
PROVINCE*(ALL SHIP_MODE) ALL: PROVINCE*ALL로 각 지역별 전체 집계
PROVINCE*(ALL SHIP_MODE) ALL: PROVINCE*SHIP_MODE로 각 지역별로 배송방법을 집계
PROVINCE*(ALL SHIP_MODE) ALL: 전체 총합
N SALES*(SUM MEAN) SHIPPING_COST*(SUM MAX MIN);
N: 주문건수
SALES*(SUM MEAN) : 매출액의 합계와 평균
SHIPPING_COST*(SUM MAX MIN): 배송비의 합계, 최댓값, 최솟값
결과_일부
It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.