Data Analysis/SAS EG

[SAS] MACRO ① : Macro 사용 목적과 기능

AubreyJeong 2021. 6. 14. 20:00

MACRO 문

SAS에는 for과 같은 반복문이 존재하지 않는다. do; end; 문이 존재하지만 기본 루프형이기 때문에 심플한 행단위의 처리에 적합하다. 그 대안으로 많이 사용되는게 MACRO구문이다. 즉, 코드의 반복적인 섹션을 방지하고 필요할 때 반복해서 사용할 수 있도록 해주는 것.

 

예를 들어 2017년부터 2019년까지 3년간의 회계 데이터가 있다. 데이터 가공처리 방법은 똑같고 해당 데이터의 연도만 다르다고 하자.

 (예) sample_bspl_2017, sample_bspl_2018, sample_bspl_2019

이 안의 각종 복잡한 포맷변환, 결측치 처리 등의 데이터 가공처리를 매 파일 마다 각각 적어주기는 너무나도 번거롭다. 3개면 몰라도 이런 파일이 10개, 20개가 된다고하면 복사 붙여넣기를 한다고해도 여간 귀찮은 일이 아니다. MACRO를 이용하면 이와 같은 처리를 간단하게 할 수 있다. (실무에서 필자가 다루는 SAS프로그램은 SAS EG라서 base버전과 다를 수는 쓰임이 있지만 골자는 동일할 것으로 생각된다.)

 

/* SAS MACRO의 구조 */

%MACRO 매크로이름(인자1, 인자2, ...);

...

%END;

%매크로이름(인자1, 인자2, ..)   * 실행시에는 %뒤에 매크로이름만 적어주면 된다;

 

'Data Analysis > SAS EG' 카테고리의 다른 글

[SAS] PROC IMPORT 데이터 불러오기  (0) 2021.07.28
[SAS] PROC DATASETS  (0) 2021.06.16
[SAS] 단일 IF  (0) 2021.06.11
[SAS] PUT, INPUT  (0) 2021.06.09
[SAS] Format, Informat  (0) 2021.06.08