데이터 스터디/SAS

SAS - 데이터 요약과 표현 (PROC PRINT, MEANS, UNIVARIATE)

케이와이엠 2023. 3. 22. 12:59

데이터요약과 표현

: PROC PRINT / MEANS / UNIVARIATE / FREQ / BOXPLOT / STANDARD

 

1. PROC PRINT

형식 :

PROC PRINT DATA =

VAR (출력할 변수)

BY (정렬)

SUMBY (소계)

PAGEBY (페이지별 출력)

SUM (변수 총합 출력)

WHERE (조건)

 

데코레이션 :

NOOBS (OBS 미출력)

LABEL (라벨 출력, 지정)

FORMAT (출력 포맷 지정)

OPTIONS (출력크기 지정)

TITLE (머릿말)

FOOTNOTE (꼬리말)

 

# 예시

# 첫 3줄 출력

:PROC PRINT DATA=class(obs=3);RUN;

# 관측치(obs) 제외하고 출력

:PROC PRINT DATA=class NOOBS;RUN;

# ID 문장 : SAS자료를 인쇄하면 자동으로 각 관측에 고유한 신분(OBS)가 출력된다. ID문장을 사용 할 땐 각 관측의 신분을 대신할 변수들을 지정해야 한다. :PROC PRINT DATA=class; ID number; RUN;

# VAR문장 : SAS자료에 포함된 변수의 출력 순서를 결정하는데 사용된다. 그리고 일부 변수만 출력을 원할 경우 사용

:PROC PRINT DATA=class; VAR name gender; RUN;

 

2. PROC MEANS

기초통계량이 나옴

#예시

-> BY문

BY 문 사용

BY 문을 쓰면 두개로 나눠서 보여줌

 

-> CLASS문

CLASS 분류 별로
CLASS 문은 합쳐서 보여줌

 

-> OUTPUT 문

NOPRINT 라서 VIEWTABLE 에서만 볼 수있음

그리고 CLASS 변수에 2개를 써서 각각 알아봄

그리면 자동으로 _TYPE_ , _FREQ_ 이 자동변수로 생성됨

 

이때 NWAY; 사용하면 TYPE이 제일 큰 마지막 타입만 출력함 !

 

-> TYPES() 문

TYPES() 넣으면

 

TYPES() 안쓴거

3. PROC UNIVARIATE

- 적률에 기초한 다양한 기술 통계량을 계산

- 극단값, 중위수, 4분위수 등에 대한 상세한 정보를 계산

- 위치모수나 척도모수에 대해서 절사평균(trimmed mean)과 같은 로버스트(robust) 추정값을 계산

- 추정값에 대한 신뢰구간 계산

- 정규성 검정 수행

- 줄기와 잎 그림, 상자도표 그림 출력

 

+) 추가로 HISTOGRAM , PROBPLOT , QQPLOT 등을 구할 수 있음.

# 예시

->

그럼 변수 별로 이런 내용들이 다 나와.

-> AGE 의 경우

-> 보는 방법

1) HISTOGRAM 으로 분포 모양 유출

2) 정규확률도 . 정규분위수 직선 그래프로 확인하기

3) 정규성 검정으로 확인.


#예시 2

1. TOTAL 기술통계량 구하기

 

-> TOTAL 변수 기술통계량 구하기

 

2. 학과별 mid 변수에 대한 줄기 잎 그림, 상자 그림 ( 우선 설정 -> 결과 -> ODS 그래프 사용 해지)

PLOT 옵션에 의해 생성

 

3. TOTAL 변수 HISTOGRAM구하기

 

PROC UNIVARIATE DATA=class PLOT

HISTOGRAM total;

RUN

 

4. TOTAL 의 평균과 표준편차를 OUT1으로 데이터셋 새로 생성

PROC MEANS DATA = class NOPRINT;

VAR total;

OUTPUT OUT=out6

MEAN(total)=total_m

STDERR(total)=total_s;

RUN;

 

4. 학과dept 별 mid 변수에 대한 줄기 잎 그림과 상자그림

PROC SORT DATA=class;

BY dept;RUN;

PROC UNIVARIATE DATA=class PLOT;

VAR mid;

BY dept;

RUN;