PRINT Procedure
1. PRINT procedure란?
print procedure를 이용하면 간단한 리포트를 작성할 수 있습니다.
또한 앞으로 배우는 여러가지 문장을 이용하면 다양한 형태로 출력할 수 있습니다.
그럼 print procedure에 대해 배워보겠습니다.
2. 기본 사용
proc print data=SAS data set; run; |
3. proc print 에서 사용할 수 있는 문장들
① var 변수명;
- column(variable)을 선택하는 문장입니다.
- 출력창에서 보고 싶은 변수만 var 문장에 씁니다.
- 변수들 사이의 구분은 blank 로 합니다.
- 출력된 결과물은 var 문장에서 썼던 변수들 순서대로 출력됩니다.
② where 조건문;
- row를 선택하는 문장입니다. (filtering)
- 비교 연산자, 논리, 연산자, 함수 등을 이용하여 출력하고 싶은 row가 선택되도록 조건문을 씁니다.
* 비교 연산자(연산자나 기호 둘 중 아무거나 사용 가능)
연산자
|
기호
|
정의
|
예시
|
EQ
|
=
|
Equal to
|
where schlct='Seoul';
|
GT
|
>
|
Greater than
|
where tuition>400;
|
LT
|
<
|
Less than
|
|
GE
|
>=
|
Greater than or equal to
|
|
LE
|
<=
|
Less than or equal to
|
|
IN
|
|
Equal to one of a list
|
where major in ('Engineering' 'NaturalScience');
where major in ('Engineering','NaturalScience');
위의 두 문장은 같은 결과
|
NE
|
^=
~=
|
Not equal to
|
where schlct^='Seoul';
|
* 논리 연산자
연산자
|
정의
|
예시
|
And
|
연산자 양쪽이 참일 경우에만 참
|
where schlct='Seoul' and major='Engineering';
|
Or
|
연산자 양쪽 중 적어도 하나가 참일 경우에 참
|
where schlct='Seoul' or major='Engineering';
|
Not
|
연산자 오른쪽이 참이면 거짓, 그렇지 않으면 참
|
where schlct not in ('Seoul','GyeongGi');
|
* 기타
연산자
|
정의
|
예시
|
between … and ~
|
… 이상 ~ 이하
|
where tuition between 350 and 450;
|
contains (= ?)
|
연산자 오른쪽을 포함하는 row 선택
|
where name contains 'an';
where name ? 'an';
|
※ 참고로 contains는 where 문장에서만 쓸 수 있습니다.
※ where 문장은 하나의 step 안에 한번만 나올 수 있습니다. 두 번 이상 나오면 마지막 where 문장만 실행됩니다.
ex)
위의 출력창처럼 첫 번째 where 문장이 실행되지 않음을 알 수 있습니다.
따라서 위의 두 가지 조건 모두 실행하기 위해서는 하나의 where 문장안에 써야합니다.
→ where schlct='Seoul' and tuition>400;
③ sum 변수명;
- 각 column(변수)에 대한 합계를 출력하는 문장입니다. (단, 숫자 타입에 한하여)
4. proc print의 옵션
proc print data=SAS data set option; run; |
① nobs
- nobs는 obs 열을 보이지 않게 하는 옵션입니다.
- proc print 를 실행하면 맨 앞에 obs 라는 column 이 출력됩니다. 이 때 obs는 observation number로 관측치에 일련번호를 붙인 것입니다.
② label
뒤에 나오겠지만 label 문장을 사용하여 변수명 대신 지정한 label 이 나오도록 출력하기 위해서는 label 옵션을 사용해야 합니다.
다음 시간에는 print procedure 에서 그룹별로 작업하는 방법을 배워보겠습니다. 그리고 오늘 한 내용까지 포함한 예제를 드리겠습니다.
모두들 SAS와 친해지는 그 날 까지 화이팅!! 입니다. *^^*
Join us for SAS Innovate 2025, our biggest and most exciting global event of the year, in Orlando, FL, from May 6-9. Sign up by March 14 for just $795.