사이트맵  |  Contact Us
 
홈 > SAS Tech & Tip > SAS Enterprise Guide
EG tip for Base User (6) 2019.06.03
전보배 81 0
http://www.mysas.co.kr/sas_tiptech/i_eg.asp?b_no=11112&cmd=content&bd_no=28

오늘은 프롬프트(prompt)에 대해 다뤄보겠습니다. 프롬프트는 base에서의 매크로입니다. 다른 점은 %let 구문을 통해 미리 입력변수를 설정하지 않고, EG의 작업들에 프롬프트를 적용하여 팝업창을 통해 입력변수를 받을 수 있습니다. sas를 잘 모르는 사람들과 EG 프로젝트를 공유할 때 적용하면 아주 유용한 기능입니다.

 

 

 

프롬프트 생성하기


sashelp.prdsal3 테이블을 가지고 작업해 보도록 하겠습니다.

이 데이터는 제품 판매의 실적과 예측을 담고 있으며, 11,520, 11개의 변수로 이루어져 있습니다.

우선 간단한 매크로 변수를 만들어 보겠습니다.

프롬프트를 만들 수 있는 곳은 두 군데가 있습니다.

초기 화면 왼쪽 하단에서 파란색 동그라미 모양의 프롬프트 관리자를 선택한 후 [추가] 버튼을 누르거나,

 

[그림 5-1]


 

질의빌더 내에서 툴바에 위치한 [프롬프트 관리자]를 클릭하여 프롬프트를 생성할 수 있습니다.

 

[그림 5-2]


 

당연히 base에서 사용하는 매크로 변수와 마찬가지로 숫자형, 문자형 모두 만들 수 있습니다. 이번에는 간단하게 숫자형만 다루도록 하겠습니다.

&std 라는 매크로 변수를 만들려고 합니다.

아래와 같이 [이름]칸에 “std”를 입력하고, 표시되는 텍스트와 설명을 입력합니다. EG 작업들에 이 매크로 변수, , 프롬프트를 적용할 때 나오는 팝업창을 설정하는 것입니다.

 

[그림 5-3]


 

[프롬프트 유형 및 값] 탭을 클릭하여, 프롬프트 유형 및 값을 설정하겠습니다. [프롬프트 유형]숫자”, [프롬프트 생성 방법]값 입력”, [값 개수]단일 값으로 설정합니다.

물론, 기존 테이블에 존재하는 데이터들을 받아서 버튼 형식으로 팝업창을 구성하는 것도 가능합니다.

[정수 값만 허용]을 체크하도록 하겠습니다.

기본값은 “500”으로 설정하겠습니다.

 

[그림 5-4]

 

 


질의 빌더에 적용

 

프롬프트를 가장 많이 적용하는 곳이 질의 빌더 입니다. 그래서 질의 빌더 내에 프롬프트를 바로 생성할 수 있는 버튼도 있습니다.

sashelp.prdsal3 테이블에서 “predict” 칼럼이 어떤 기준 이상일 경우만 뽑는 질의빌더를 생성하려고 합니다. ‘어떤 기준은 우리가 이미 만들어 놓은 “std”라는 숫자 프롬프트를 이용하도록 하겠습니다.

[데이터 선택]창에 출력할 칼럼 “predict”를 끌어다 놓습니다.

 

[그림 5-5]


 

[데이터 필터] 탭을 클릭하여, “predict”를 끌어다 놓습니다.

 

[그림 5-6]


 

기존 필터 생성과 작업과 마찬가지로 연산자를 선택합니다. 어떤 기준 이상의 predict 값을 산출할 것이므로 “greater than or equal to”를 선택합니다. 그리고 [프롬프트 값에 대한 필터 생성]을 체크하고, [] 부분에서 오른쪽 끝에 있는 역삼각형 모양의 버튼을 클릭합니다.

 

[그림 5-7]


 

팝업창이 뜨면 [프롬프트] 탭을 클릭하여, 앞서 만들어 놓은 “&std”를 선택합니다.

 

[그림 5-8]


 

값에 “&std”가 들어 있는 것을 확인하고 [다음] 버튼을 누릅니다.

 

[그림 5-9]


 

속성창에서 작업들이 잘 됐는지 확인 한 후 [마침] 버튼을 누릅니다.

 

[그림 5-10]


 

데이터 필터창에 매크로 구문이 적용되어 있는 것을 확인 하고, [저장 및 닫기]를 누르겠습니다.

 

[그림 5-11]


 

질의빌더 아이콘에 물음표가 달려 있는 것이 보이시나요? 그러면 프롬프트를 잘 적용하신 겁니다.

 

[그림 5-12]


 

이제 질의빌더를 실행해 보도록 하겠습니다.

질의빌더가 실행되기 전에 우리가 프롬프트를 만들면서 설저했던 팝업창이 뜨는 것을 확인할 수 있습니다.

기준금액을 변경하지 않고 [실행] 버튼을 눌러보겠습니다.

 

[그림 5-13]


 

로그창에서 데이터가 8,384개가 나온 것을 확인할 수 있습니다.

 

[그림 5-14]


 

 

 

프로그램 편집기에 적용하기


물론 프로그램 편집기에도 프롬프트를 적용할 수 있습니다.

작업공간에서 우클릭하여 프로그램 편집기를 하나 만들어 보겠습니다.

 

[그림 5-15]

  

 

아래 그림과 같이 간단한 프로그램을 작성하겠습니다.

where 구문에 &std 매크로 변수를 사용했습니다.

 

[그림 5-16]


 

이 프로그램을 닫은 후 선택하여 우클릭을 하여 가장 아래에 있는 [속성]을 클릭합니다.

 

[그림 5-17]


 

속성창의 왼쪽 패널에서 네 번째에 [프롬프트]를 선택하고, 하단에 [추가] 버튼을 클릭합니다.

이 프로그램에 프롬프트를 적용하기 위한 작업입니다.

 

[그림 5-18]


 

사용할 프롬프트를 선택하고, [확인] 버튼을 누릅니다.

 

[그림 5-19]


 

우리가 제일 처음 만들었던 “std” 프롬프트가 적용되어 있는 것이 보입니다. [확인] 버튼을 누르겠습니다.

 

[그림 5-20]


 

질의 빌더에서와 마찬가지로 프로그램에도 물음표가 붙어 있는 것이 보입니다.

 

[그림 5-21]


 

이 프로그램을 실행시키면 질의빌더에서와 같은 팝업창이 생성됩니다.

 

[그림 5-22]


 

실행 후 로그창에 앞서 질의빌더의 결과와 마찬가지로 8,384개의 관측치가 생성된 것을 확인할 수 있습니다.

 

[그림 5-23]

 

 

한 팝업창에 여러 개의 프롬프트를 적용하는 것도 가능합니다.

sas 프로그램을 공유할 때 프롬프트를 사용하시면 더욱 유용할 것이라고 생각됩니다.

 

지금까지 프로그램 사용자를 위한 EG Tip들을 다뤄 보았습니다.

많은 기능들 중에 제가 직접 EG를 사용하며, 또 사용자들과 이야기하며, 유용하다고 생각했던 것들 중 몇 가지만 소개해 드린 것이기 때문에 여러분들이 사용하며 더 많은 꿀팁들을 발견하실 것이라고 생각합니다. (발견하시면, 공유 부탁 드립니다!!) 

 

그 동안 읽어주셔서 감사합니다. 

 
 
휴대폰 번호
휴대폰 인증번호
 

 더 이상 글이 존재하지 않습니다.

 EG tip for Base User (5)