[1-1] Macro - Introduction
안녕하세요^^
이번 시간부터는 매크로(MACRO)에 대해 알아볼 것 입니다.
첫 시간에는, 매크로 기능의 목적에 대해 알아보겠습니다.
학습목표인 매크로 기능의 목적을 공부한 뒤에, 매크로를 적용한 예들을 살펴보겠습니다.
매크로 기능은 무엇이고 우리에게 어떤 도움을 줄까요?
■ 매크로 기능이란?
- 매크로 기능은 SAS 코드를 자동화하고 사용자 지정이 가능한 텍스트 처리 기능입니다.
- 일반적인 작업을 수행하기 위해 입력하는 SAS 코드의 양을 최소화하는 데 도움이 됩니다.
- SAS 프로그램 내에서 어디서든 매크로 변수를 만들 수 있고
사용자 정의 SAS 코드를 생성하는 매크로 프로그램을 작성하고 호출할 수 있습니다.
그럼 앞으로 배우게 될 매크로를 사용한 예들을 살펴보겠습니다.
■ 매크로 기능 예시
[예시 1] 시스템 값 대입하기
자동 매크로 변수는 시스템 값을 저장하고 있습니다.
따라서 자동 매크로 변수를 이용하면 hardcoding을 피할 수 있는 장점이 있습니다.
[예시 2] 사용자 정의 값 대입하기
왼쪽 코드에서와 같이 프로그램 전반에 걸쳐
반복적으로 동일한 값을 참조할 필요가 있는 경우,
사용자 정의 매크로 변수는 한 번 값을 정의하고
프로그램 내에서 반복적으로 그 값을 대체 할 수 있습니다.
[예시 3] 조건부 처리하기
'매일' 자세한 보고서를 생성할 수 있습니다.
또한 ‘주’ 단위로 데이터를 요약하고 더불어,
매주 금요일에는 추가 보고서를 생성할 수 있습니다.
매크로 프로그램은 사용자가 정의한 조건에 기초하여,
SAS 프로그램의 선택된 부분을 실행할 수 있습니다
[예시 4] 반복 처리하기
2008년부터 2010년까지 매년 유사한 보고서를 생성하는 경우,
매크로 프로그램은 각 반복에 다른 값을 대체하여
반복적으로 SAS 코드를 생성 할 수 있습니다.
[예시 4] 데이터 기반 응용프로그램 적용하기
선택한 변수의 각 고유 값에 대해 부분 집합 데이터셋을 만드는 경우,
매크로 프로그램은 데이터를 기반한 코드를 생성 할 수 있습니다.
위 예시들의 경우 매크로를 사용하면 편리해 질 수 있습니다.
그렇다면 나아가 매크로를 사용한 프로그램의 효율적인 면은 어떻게 될까요?
■ 매크로 기반 응용프로그램의 효율성
매크로 기능은 개발 시간과 프로그램에 대한 유지 시간을 모두 감소시킬 수 있습니다.
다만, 매크로 기법에 의해 생성 된 SAS 코드하고 해서
매크로를 사용하지 않은 코드보다 더 빨리 컴파일 되거나 더 빨리 실행되는 것을 아닙니다.
즉, SAS 코드가 어떻게 생성되었는지(매크로 기능의 사용 여부)에 관계없이
기본적인 SAS 코드의 효율에 의존합니다.
그럼 매크로를 개발하는 과정을 배워보겠습니다.
n 매크로 응용 프로그램 개발하는 순서
à 매크로를 사용하여 SAS 코드를 생성하는 경우,
아래 5단계 방법을 사용하면 좋습니다.
위 다섯 단계의 방법은 빠른 개발 및 디버깅을 가능하게 합니다.
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.