취미생활/프로그래밍

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; 으로 조정 가능

반응형