많은 소프트웨어 애플리케이션은 메뉴 기반 또는 명령 기반입니다
SAS도 다른 프로그램과 마찬가지로, 사용자가 원하는 작업을 전달하고 SAS 언어를 사용하여 작성됩니다.
SAS 프로그램은 순서대로 실행되는 명령문으로 이해하면 쉽습니다.
문장은 SAS에 정보 또는 지침을 제공하며 프로그램에 적절하게 작성되어야 합니다.
■ DATA and PROC Steps
SAS 프로그램은 DATA 단계와 PROC 단계라는 두 가지 기본 구성 요소로 구성됩니다.
일반적인 프로그램은 SAS 데이터 세트를 생성하기 위한 DATA 단계로 시작하여 데이터를 PROC 단계로 전달하여 처리합니다.
아래의 예시는 DATA 단계에서 마일을 킬로미터로 변환하고 PROC 단계에서 결과를 인쇄하는 간단한 프로그램입니다.
DATA distance;
Miles = 26.22;
Killometers = 1.61 *Miles;
PROC PRINT DATA = distance;
RUN;
DATA 및 PROC 단계는 문장으로 구성됩니다.
각 단계에는 적게는 하나, 많게는 수백 개의 문이 있을 수 있습니다.
대부분의 명령문은 한 가지 유형의 단계에서만 작동합니다. 즉, 데이터 단계에서는 작동하지만 PROC 단계에서는 작동하지 않으며, 또는 그 반대도 마찬가지입니다.
DATA statement 와 PROC statement 를 정리하면 다음과 같습니다.
Data Statement : 데이터를 읽고 수정
PROC Statement: 데이터를 분석하거나 유틸리티 기능을 수행해서 보고서를 인쇄
DATA 단계는 DATA 문으로 시작하며, DATA라는 단어로 시작합니다.
이 키워드 뒤에는 SAS 데이터 세트를 구성하는 이름이 나옵니다. 위의 DATA 단계는 DISTANCE라는 SAS 데이터 세트를 생성합니다. 데이터 단계는 외부 원시 데이터 파일에서 데이터를 읽는 것 외에도 DO 루프, IF-THEN/ELSE 논리, 다양한 숫자 및 문자 함수를 포함할 수 있습니다.
또한 DATA 단계는 연결 및 일치 병합을 포함하여 사용자가 원하는 거의 모든 방식으로 데이터 세트를 결합할 수 있습니다.
프로시저는 키워드 PROC 뒤에 프로시저 이름(예: PRINT, SORT 또는 MANDS)이 오는 PROC 문으로 시작합니다. 대부분의 SAS 프로시저에는 가능한 문장이 몇 개만 있습니다. 정렬 및 인쇄에서 분산 분석 및 3D 그래픽에 이르기까지 모든 작업을 수행합니다.
SAS가 새로운 스텝(DATA 또는 PROC 문으로 표시됨), RUN, QUIT, STOP 또는 ABORT 문 또는 배치 모드에서 실행 중인 경우 프로그램의 끝과 일치하면 종료됩니다.
RUN 문은 SAS에게 단계의 모든 선행 행을 실행하도록 지시하며, DATA 또는 PROC 단계의 일부가 아닌 드문 전역 문 중 하나입니다. 위의 프로그램에서 SAS는 PROC 문에 도달하면 DATA 단계가 종료되었음을 알고 있습니다. PROC 단계는 프로그램 종료와 일치하는 RUN 문으로 끝납니다.
■ DATA Step's Built-in Loop
DATA 단계는 데이터를 읽고 수정하며, 데이터에 발생하는 작업을 유연하게 제어할 수 있습니다.
그러나 DATA 단계에는 기본 구조에 Built-in Loop가 있습니다. Built-in Loop 는 SAS가 자동으로 실행됩니다.
데이터 단계가 한 줄씩 실행된다는 생각하면 이해하기 쉽습니다.
기본적으로 SAS는 DATA 단계 중 한 줄을 두 번째 줄 전에 실행하고 세 번째 줄 앞에 두 줄을 실행합니다. 예를 들면, Z라는 변수가 X와 Y의 곱이면 X와 Y를 만드는 문이 Z를 만드는 문보다 먼저 와야 합니다.
SAS는 첫 번째 관찰을 수행하고 데이터 단계(물론 한 줄씩)를 끝까지 수행한 후 두 번째 관찰을 위해 루프백합니다. 이러한 방식으로 SAS는 한 번에 하나의 관측치만 봅니다.
■ Reading the SAS Log
SAS 프로그램을 실행 할 때마다 SAS는 로그에 메시지를 기록합니다.
에러가 있을 시, 문제가 있음을 알 수 있는 유일한 방법은 SAS 로그를 확인하는 것입니다.
< Code >
< Log >
로그를 자세히 보면, 아래와 같습니다.
위의 SAS 로그는 SAS가 프로그램을 실행하는 방법에 대한 자세한 설명입니다.
왼쪽에 줄 번호가 추가된 원본 프로그램 문장이 들어 있습니다. DATA 단계 다음에는 생성된 SAS 데이터 세트의 이름이 포함된 참고가 뒤따릅니다.
관측치 수(1) 및 변수 수(2). 빠르게 살펴봄으로써 관측치가 손실되거나 실수로 원하지 않는 변수가 많이 생성되지 않았음을 확인할 수 있습니다.
DATA 및 PROC 단계는 모두 사용된 컴퓨터 리소스에 대한 노트를 생성합니다.
오류 메시지가 있는 경우 로그에 SAS의 에러가 난 위치와 조치를 나타내는 메시지가 표시됩니다.
오류를 나타내거나 다른 때는 유용한 정보를 제공하는 경고 및 기타 유형의 노트를 찾을 수도 있습니다.
■ Viewing Results
출력을 보는 방법은 사용 중인 운영 환경과 프로그램을 제출하는 방법에 따라 달라집니다.
SAS 윈도우 설정 환경 Microsoft Windows의 SAS 윈도우 환경에서 프로그램을 제출하면 기본적으로 출력이 결과 뷰어 창으로 이동하여 HTML로 표시됩니다. UNIX에서 출력은 기본적으로 HTML로 표시되지만 별도의 웹 브라우저 창에도 표시됩니다. z/OS에서 출력은 출력 창에 텍스트로 표시됩니다.
배치 모드 프로그램을 배치 모드로 제출하면 컴퓨터의 파일에 출력이 저장되고 운영 환경의 명령을 사용하여 출력 파일(목록이라고도 함)을 볼 수 있습니다. 예를 들어 UNIX 시스템에서 SAS 프로그램을 배치 모드로 실행하는 경우 출력은 확장자가 .lst인 파일에 저장됩니다. 파일을 보려면 cat 또는 더 많은 명령을 사용할 수 있습니다.
결과 뷰어 창 Microsoft Windows의 SAS 창 환경에서 프로그램을 제출한 후 결과가 결과 뷰어 창으로 이동합니다. 결과 뷰어 창이 자동으로 열리고 열려 있는 다른 프로그래밍 창 위에 나타납니다. 다음 그림은 분산 분석(분산 분석) 절차가 포함된 프로그램을 제출한 후 결과 뷰어 창의 모양을 보여 줍니다. Results Viewer(결과 뷰어) 창은 절차 출력의 끝을 볼 수 있도록 자동으로 아래로 스크롤됩니다.
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.