BookmarkSubscribeRSS Feed

CH2. SAS Program 구조와 SAS Data Set 구성하기

Started ‎06-08-2020 by
Modified ‎06-08-2020 by
Views 739

————————————————————————————————————————————————————————— 

앞으로 MYSAS 커뮤니티 유저분들에게 SAS UE의 데이터 핸들링, 분석 그리고 시각화 등의 사용법에 대해 전해드리려고 합니다.

 

기존에 MYSAS 홍보대사였던 최준님의 SAS UE 자료가 유용하였으나, 새로운 버전으로 업데이트가 되면서 더 많은 분석 및

편의 기능이 추가되었기에 설치 가이드 및 사용에 대한 컨텐츠를 새로 제작하게 되었습니다.


MYSAS 커뮤니티 사이트 뿐만 아니라 SAS Korea 유튜브 채널*에서도 해당 컨텐츠의 동영상을 제공하고 있습니다.

(*SAS Korea 유튜브 채널: https://www.youtube.com/user/saskorea)


모든 학계의 교수님들과 학생들이 사용하는 제품인 만큼, 어느 누구라도 보기 쉬우며 따라할 수 있는 컨텐츠를 제작하겠습니다.

—————————————————————————————————————————————————————————

CH2. SAS Program 구조와 SAS Data Set 구성하기 동영상: https://youtu.be/ymvJxnizewY

 

2-1.PNG

이번 컨텐츠는 “Ch2. SAS Program 구조와 SAS Data Set 구성하기” 이며, SAS Program 구조, SAS Library 생성, 내*외부 파일을 불러 SAS Data Set을 구성, 그리고 SAS Data Set을 내보내는 것에 대해 알려드리겠습니다.

 

 

2-2.PNG

SAS Program은 Data Step과 Proc Step 인 두가지 Step으로 나뉘며, 각각의 Step은 Statement라는 문장으로 이루어져 있습니다.

Data Step은 SAS Data Set을 생성하고 관리할 수 있으며, Proc Step은 SAS Data Set을 Input Data로 두며 각종 분석 및 그래프 등의 처리를 하는 Step입니다.

 

 

2-3.PNG

 


각각의 Step들은 Run Statement와 함께 쓰여야 Step이 구현됩니다. 하지만 위 아래로 다른 Step에 둘러쌓여 있는 경우, Run Statement없이도 Step이 구현됩니다.

 

이러한 SAS Program을 통해 분석 및 그래프 등의 처리를 하기 위해서는 Input Data를 SAS Data Set으로 구성해야 합니다.
SAS Data Set은 파일 케비넷과 같은 역할을 하는 SAS 라이브러리(Library)에 저장이 되어 사용됩니다.
따라서 SAS 라이브러리는 SAS Data Set과 떼려야 뗄 수 없는 관계를 가지고 있습니다.

 

 

2-4.PNG

 


SAS 라이브러리는 크게 SAS Data Set 등을 저장하는 저장소 역할을 하며, OS안에 있는 폴더와 SAS 시스템을 연결 시켜주는 역할도 합니다.
이러한 SAS 라이브러리는 두가지 종류로 나뉩니다. 첫번째, 영구 라이브러리입니다. SAS System을 종료해도 해당 라이브러리 내의 파일들은 모두 유지가 되며, 언제나 라이브러리를 지정한 OS안에 있는 폴더와 연결되어 작동합니다.
영구 라이브러리의 사용법은 '영구라이브러리명.데이터셋명'으로 SASUE라는 영구 라이브러리안에 Test라는 데이터 셋이 있을 경우, 해당 SAS Data Set은 SASUE.Test로 쓰입니다.

 

그리고 두번째, 임시 라이브러리입니다. SAS System을 종료하면 해당 라이브러리의 모든 파일은 없어집니다.
따라서 모든 작업 후에 꼭 향후 필요한 정보에 한해서는 영구 라이브러리에 저장을 해주셔야 합니다.
임시 라이브러리의 사용법은 '임시라이브러리명.데이터셋명'으로 Test라는 데이터 셋이 임시라이브러리에 존재할 경우, 해당 SAS Data Set은 WORK.Test 또는 Test로 쓰입니다.

 
라이브러리 생성방법은 다음과 같이 두가지 방법으로 생성 가능하며, 가상화 공간이 아닌 물리적 디스크에 영구 라이브러리를 만들기 위해서는 오로지 이전 컨텐츠인 Ch1에서 설정한 "공유 폴더"와 연결해야 합니다.

 

 

2-5.PNG

 

라이브러리를 생성하셨다면, 해당 라이브러리에 저장을 할 SAS Data Set만들기 입니다.
SAS Data Set은 내부 SAS Data Set을 불러오는 것 뿐만 아니라 CSV파일 또는 Excel파일과 같은 외부 데이터 파일을 불러 SAS Data Set을 구성할 수 있습니다.

먼저, Data Step 안에서 Set문장을 사용하여 내부 데이터 불러오는 방법입니다.

 

 

2-6.PNG


Set문장을 통해 내부에 있는 데이터셋을 불러오며, Data Step 첫문장에 생성할 데이터셋명을 입력해줌으로써 기존에 존재하는 데이터셋을 새로운 데이터셋으로 저장해줍니다.

 

다음은 외부 데이터 불러오기로 두가지 방법이 있습니다.

Proc Step(Proc Import)을 이용하는 SAS Code 방법과 SAS UE에서 제공하는 SAS Studio GUI를 이용하여 외부 데이터를 불러오는 방법이 있습니다.

 

 

2-7.PNG

Proc Import를 통해 외부 데이터*를 불러올 경우, 공유폴더의 디렉토리를 Datafile 옵션에 입력해야하며, 해당 파일의 확장자를 DBMS 옵션에 입력해줘야합니다. 마지막으로, 불러온 데이터를 SAS Data Set으로 저장하기 위한 라이브러리와 Data Set명을 Out 옵션에 입력해줘야 합니다.
*외부 데이터는 공유폴더에 존재해야합니다.

 

SAS Studio GUI를 이용하여 외부 데이터를 불러올 경우, 다음과 같은 과정을 거치게 됩니다.

 

 

2-8.PNG2-9.PNG

 

SAS는 외부 데이터를 불러오는 것뿐만아니라 내부에 저장되어 있는 SAS Data Set을 내보내는 것도 가능합니다.
SAS Data Set을 내보내는 방법은 두가지이며, Proc Step(Proc Export)와 SAS Studio GUI를 이용하는 방법이 있습니다.
먼저 Proc Step(Proc Exprot)를 이용한 방법으로, 다음과 같은 SAS Code를 입력하여 데이터를 내보냅니다.

 

 

2-10.PNG

항상 데이터 업로드 및 다운로드에서 주의하실점은 SAS UE는 가상화 머신 위에서 구동이 되는 것이므로, 사전에 설정한 공유폴더에서 데이터의 업로드와 다운로드가 가능하다는 것입니다. 이점 유의하시길 바랍니다.

 

두번째는 SAS Studio GUI를 이용한 데이터 내보내기로, 라이브러리에 저장되어있는 SAS Data Set에 우클릭하여 내보내는 방법입니다.

 

 

2-11.PNG

 

이상, SAS Program 구조, SAS Library 생성, 내*외부 파일을 불러 SAS Data Set을 구성, 그리고 SAS Data Set을 내보내는 것에 대해 소개한 “Ch2. SAS Program 구조와 SAS Data Set 구성하기”였습니다.

 

컨텐츠에 대해 궁금한 사항은 댓글로 남겨주시면 감사 하겠습니다.

 

앞으로 더 좋은 컨텐츠를 가지고 여러분들을 MYSAS를 통해 찾아 뵙겠습니다.

 

감사합니다.

Version history
Last update:
‎06-08-2020 05:30 AM
Updated by:
Contributors

SAS Innovate 2025: Call for Content

Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!

Submit your idea!

Article Tags