BookmarkSubscribeRSS Feed

[SAS BASE] 파이썬에서 BASE 9.4사용하기

Started ‎06-15-2020 by
Modified ‎06-15-2020 by
Views 302

안녕하세요, 박세훈입니다. 

 

오늘은 SAS BASE 9.4를 파이썬에서도 사용할 수 있도록 연동하는 작업을 해보겠습니다.

 

저처럼 SAS를 좋아하는 사람은 오픈툴과 애증의 관계에 있지 않나 싶습니다.

 

SAS와 Python을 연동하는 한국 자료가 많지도 않고 , 글로벌 자료도 설명이 친절하지 않아서,

 

시간을 좀 들여 메뉴얼을 만들어보았습니다.

1. SASPY 패키지 설치하기

1.1먼저 탐색기에서 "Anaconda Prompt"를 실행합니다.

다운로드.png

 

위처럼

pip install saspy

명령어를 실행하면, SASPY 패키지가 설치됩니다.

 

pip install sas-kernel

마찬가지로 위 명령어를 통해 sas kernel을 설치해주세요. 

1.2 쥬피터 노트북에서 파이썬을 실행합니다.

다운로드 (1).png

 


아래 명령어로 파이썬에서 "saspy" 패키지를 불러옵니다

import saspy

입력 후 아무런 에러 메세지가 없다면 설치가 잘 된것입니다.

2. saspy 환경구성

saspy를 사용하기 위해선 정말 많은 환경 설정이 필요합니다. 마음 단단히 먹으세요!

2.1 시스템 환경변수 설정

saspy가 java를 잘 찾아가기위해, 시스템 환경변수를 설정합니다.

탐색기에서 "시스템 환경 변수 편집" 실행 > 고급 > 하단의"환경변수(N)" 클릭

아래쪽의 시스템 변수(S) 콘솔에서 "새로만들기(W)" 클릭

변수 이름 : PATH

변수 경로 : C:\Program Files\SASHome\SASFoundation\9.4\core\sasext

기존의 PATH변수에 덮어 씌워도 됩니다.

이후 컴퓨터를 재시작합니다.

2.2 saspy_personal.py 파일 생성

주피터 노트북에서,

Anaconda3\Lib\site-packages\saspy 디렉토리에 들어가시면,

sascfg.py 라는 파일이 있습니다.

sascfg파일은 종종 버전업에 따라 업데이트가 되므로,

이 파일을 복사하여 sascfg_personal.py 라는 파일을 만들어줍니다.

(필수사항입니다.)

그리고 sascfg_personal.py 파일을 열어줍니다.

2.2.1 파라미터 활성화

38줄의 SAS_config_names=['default']#을 붙여 주석 처리를하고,

35줄의 SAS_config_names = ['default', 'ssh', 'iomlinux', 'iomwin', 'winlocal', 'winiomlinux', 'winiomwin', 'http']#을 지워서 활성화 시킵니다.

2.2.2 IOM 경로 연결

157줄의

cpW += ";C:\\Users\\msterling\\AppData\\Local\\Continuum\\Anaconda3\\envs\\py35\\Lib\\site-packages\\saspy\\java\\saspyiom.jar"#을 붙여 비활성화 시키고,

cpW += ";C:\\Users\\본인사용자계정\\Anaconda3\\Lib\\site-packages\\saspy\\java\\saspyiom.jar" 를 붙여넣어 경로를 재설정합니다.

 

2.2.3 CPW 경로 연결

150번대에 가시면

cpW += ";C:\\Program Files\\SASHome\\SASDeploymentManager\\9.4\\products\\deploywiz__94520__prt__xx__sp0__1\\deploywiz\\log4j.jar"

형태로 된 경로가 4개 있습니다.

그런데 여기서 두번째 줄 오른쪽에 숫자로 된 "94520" 부분이 컴퓨터 / SAS소프트웨어 별로 다르므로,

자신의 제품에 맞춰 숫자를 바꿔주시기 바랍니다.

2.2.4 JAVA 경로 연결

160번대

winlocal = {'java' : 'java',

JAVA 경로를

winlocal = {'java' : '

C:\\ProgramFiles\\SASHome\\SASPrivateJavaRuntimeEnvironment

\\9.4\\jre\\bin\\java.exe',

로 바꿔줍니다.

3. SAS - Python 연결

 

sas=saspy.SASsession()

를 입력하여 SASsession을 시작합니다.

 

다운로드 (2).png

 

window에서는 winlocal을 사용하므로 "winlocal" 을 타이핑합니다.

 

다운로드 (3).png

 

 

다음과 같이 SAS가 연결되었다고 뜨면 성공적으로 완료된 것입니다.

3.1 데이터 불러오기

다운로드 (4).png

 

cars = sas.sasdata("CARS","SASHELP")

cars.describe()

명령어를 순서대로 입력하여, 데이터가 잘 불러와지는지 확인합니다.

describe는 데이터 표현 방식중 하나입니다.

4. Console 실행

다운로드 (5).png

 

주피터 노트북으로 돌아가서, "NEW"를 누르면

SAS 콘솔이 생긴 것을 확인할 수가 있습니다.

콘솔이 실행되면 SAS에서 사용하는 프록시져를 입력해볼까요?

저는 PROC MEANS 를 이용하였습니다.

proc means data=sashelp.cars;

run;

을 사용하여 실험해보시기 바랍니다.

다운로드 (6).png

 

 

그러면 위처럼 세스에서만 사용할 수 있는 proc을 python에서도 구현할 수 있게 되었습니다!

Version history
Last update:
‎06-15-2020 03:10 AM
Updated by:
Contributors

sas-innovate-wordmark-2025-midnight.png

Register Today!

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.


Register now!

Article Labels
Article Tags