취미생활/프로그래밍
SAS 옵션 코드들
내가그리는인생
2025. 7. 7. 16:14
반응형
SAS의 다양한 OPTIONS 명령어와 부가 기능을 정리한 실무 가이드. 압축 설정부터 로그 디버깅까지 핵심 옵션을 확인하세요.
SAS 옵션 기능 총정리: 효율적인 분석을 위한 필수 가이드
SAS는 단순한 분석 도구를 넘어 강력한 시스템 제어 기능을 제공합니다. 특히 OPTIONS 명령어를 활용하면 데이터 처리 속도 개선, 로그 제어, 출력 포맷 설정, 파일 압축 등 다양한 부가 기능을 자유자재로 조정할 수 있습니다. 이 글에서는 실무에서 반드시 알아야 할 SAS의 주요 옵션 기능들을 정리합니다.
1. OPTIONS 명령어 기본 구조
options 옵션1=값 옵션2=값 ...;
- 전역적으로 SAS 세션의 동작 방식을 설정
- 로그, 출력, 포맷, 처리 방식 등 다양한 항목 제어
예:
options compress=yes linesize=120 pagesize=60;
2. 주요 OPTIONS 항목 정리 및 실행 예시 (샘플 데이터 비교 포함)
샘플 데이터 생성
data sample;
input id name $ age "A B"n;
datalines;
1 Kim 23 100
2 Lee 31 200
;
run;
2-1. VALIDVARNAME=V7 vs VALIDVARNAME=ANY
options validvarname=v7;
✅ 변화 예시:
- Excel 시트에 "A B"라는 변수명이 있을 경우,
- validvarname=v7 설정 시 SAS에서는 자동으로 A_B로 변경됨.
예)
원본 변수명: "A B" SAS 데이터셋 변수명: A_B
반면,
options validvarname=any;
- 변수명을 공백 포함 그대로 사용 가능
- "A B"n 형태로 참조 필요
예)
SAS 데이터셋 변수명: "A B"n 사용 예시: data _null_; set sample; put "A B"n=; run;
2-2. COMPRESS=YES (데이터 압축)
options compress=yes;
✅ 변화 예시:
- 적용 전: sample.sas7bdat = 약 1.0MB
- 적용 후: sample_compressed.sas7bdat = 약 0.3MB
- 기능 동일하지만 저장 공간 절감
2-3. MPRINT, SYMBOLGEN, MLOGIC (매크로 디버깅)
options mprint symbolgen mlogic;
✅ 변화 예시:
- 적용 전 로그:
- Hello Lee
- 적용 후 로그:
- SYMBOLGEN: Macro variable NAME resolves to Lee MLOGIC(TEST): Beginning execution MPRINT(TEST): %put Hello Lee; Hello Lee
2-4. LINESIZE, PAGESIZE (출력 형식 조정)
options linesize=120 pagesize=50;
✅ 변화 예시:
- linesize=80: 긴 변수명 줄바꿈 발생
- linesize=120: 테이블 가로 확장, 가독성 향상
2-5. OBS, FIRSTOBS (데이터 범위 제한)
options firstobs=2 obs=2;
✅ 변화 예시:
- sample 데이터셋 전체 2건 → id 2행만 출력됨
2-6. LOCALE=ko_KR (날짜/숫자 출력 로컬 설정)
options locale=ko_KR;
✅ 변화 예시:
- 기존 출력: 01JUL2025
- 한국어 로케일 적용 후: 2025년07월01일
3. 옵션 설정 방법과 위치
- 전역 설정: OPTIONS 명령어 사용
- 로컬 설정: DATA, PROC 단계 내 OPTIONS 문
- 자동 실행 설정: autoexec.sas 파일 내 선언
options compress=yes;
4. SAS 도움말 기능: F1 키 활용하기
SAS 에디터 환경에서 키보드의 F1 키를 누르면 현재 커서 위치에 따라 다음과 같은 도움말 기능이 제공됩니다:
- 함수, 프로시저, 옵션에 대한 상세 문서 자동 호출
- 예: options 위에서 F1 → OPTIONS 설명 페이지 열림
- 예: mean() 함수에서 F1 → MEAN 함수 설명과 인수 사용법 열림
✅ 활용 팁:
- 낯선 함수나 옵션을 사용할 때 즉시 문법과 예제를 확인 가능
- 실습 중 빠른 레퍼런스로 매우 유용함
5. 실무에서 자주 사용하는 옵션 조합
options compress=yes reuse=yes obs=max mprint mlogic symbolgen;
- 데이터 압축 + 공간 재사용
- 매크로 디버깅 활성화
- 모든 데이터 처리
6. FAQ
Q1. 압축 옵션 사용 시 성능은 좋아지나요?
저장 공간 절약 효과는 있으나, 압축/해제 연산으로 처리 속도는 약간 저하될 수 있음. 대용량 저장 최적화에 유리
Q2. 로그에서 매크로 실행 흐름을 확인하고 싶어요
options mprint mlogic symbolgen;을 활성화하세요
Q3. 출력 포맷이 너무 작아요. 줄 수 늘릴 수 있나요?
options linesize=120 pagesize=80; 으로 조정 가능
반응형