BookmarkSubscribeRSS Feed

[SAS 프로그래밍] SAS/IML로 행렬 히트맵 그리기(CALL HEATMAPCONT)

Started ‎06-18-2020 by
Modified ‎06-18-2020 by
Views 327

 안녕하세요이번시간에는 IML문의 HEATMAPCONT서브루틴을 통해 숫자행렬의 히트맵을 만드는 법에 대해 알아보겠습니다.

 

 

 

HEATMAPCONT문에 쓰이는 옵션은 다음과 같습니다.

CALL HEATMAPCONT

 

-COLORRAMP=

히트맵에서 쓰일 색을 지정하는 옵션입니다.

예를 들어 ‘gray’를 지정한다면흰색 회색 검은색 3색의 조합으로 색상이 정해집니다.

 

Hy7uvzcv10AAAAASUVORK5CYII_.png

 

nEICA4jchgIMABCDgEQLJKanKM1HJgMrGEIQABCDgKQI8BXsqHEwGAhAwSoAMaBQ3xiAAAU8RIAN6KhxMBgIQMEqADGgUN8YgAAF.png

 

 

 

‘BlueRed’를 지정한다면 파란색과 빨간색의 조합이 쓰이게 됩니다.

 

 iTAaWZiBXyKXTl_B3YyALcreMZjxLM5AFuXT6EvxuDGRB7pbRjGdpBrIgl05fgt_NgSzI3TKa8SzNwDdyY7UwR7rSHgAAAABJRU5.png

 

wfYLR0lZeaNHQAAAABJRU5ErkJggg__.png

 

 

 

-SCALE=

행렬의 크기를 조정하는 옵션입니다변수의 스케일이 다른 경우행 또는 열을 지정하여 각 행 또는 열을 표준화해줍니다.

 

 

-XVALUES & YVALUES=

히트맵에서 X또는 Y축에 해당하는 행벡터 혹은 열벡터를 지정하는 옵션입니다따로 지정하지 않을 경우 열번호가 사용됩니다.

 

 

-DISPLAYOUTLINES=

히트맵에 격자무늬를 넣을지 결정하는 옵션입니다.

0을 지정할 경우 격자무늬가 사라집니다.

 

ADid4ZjUO26zEAAAAASUVORK5CYII_.png

 

YaGhmnTpqWkpIjPddlBxekXEeiuu_4y9z2uaZjyLjFxaxKHfSwyHAQQGFiAW5OwZyCAAAIWFeDcqEUnhm4hgIBdBEijdpkp_okAA.png

 

 

 

기본값과 같은 0이 아닌 다른 숫자를 지정하면 격자무늬가 생깁니다.

 

F873p3IQhcQSBDAjof0AAIbEADxNoAOlUAAxEMOAIENCIB4G0CHSiAA4iEHgMAGBEC8DaBDJRAA8ZADQGADAiDeBtChEgiAeMgBI.png

 

yOk4h1hBAARoCGD5DxpKkAEBEAAB1gRwrZM1cfgDARBQAAGUTgUkEUMAARBgTQClkzVx_AMBEFAAAZROBSQRQwABEGBNAKWTNXH4.png

 

 

 

 

 

-TITLE=

 

히트맵의 제목을 지정하는 옵션입니다.

 

pja9Uc8uF9qYudtAYUM_qGwDdy8r45b5WFslJkkuypcd1Cu06aHkQZXDQakTLeGvz2RFO3u4Nd2c8Lc7X4InvvfqeXoP_X6LEKXP.png

 

UmqHAgGBECAHwG0P36s4QkEQEBSBND_JFUOBAMCIMCPANofP9bwBAIgICkCaH_SKgeCAQEQ4EfgfwHOL_0BqkVGzQAAAABJRU5Er.png

 

 

 

 

 

-RANGE=

Colorramp 옵션에서 설정한 색상램프의 범위를 지정하는 옵션입니다예를 들어 RANGE={-1,1} -1에서 1까지의 범위를 나타내고 RANGE={-1, }같은 경우는 범위의 최소값만을 -1로 지정하는 것입니다램프의 범위를 넘어가는 행렬의 원소는 색상램프에 없는 일정한 통일된 색으로 칠해집니다.

 

08MnJA0x3MaA93v6NgBwDAYWYgB6WCgZgDKdAehhegoAYCEGoIeFkgEo0xmAHqanAAAWYgB6WCgZgDKdAehhegoAYCEGoIeFkgEo.png

 

wF3NmCwIT88_wAAAABJRU5ErkJggg__.png

RANGE옵션을 사용하여 색상램프의 범위를 0에서 5까지로 지정한 것입니다범위에 포함되지 않는 행렬 원소들은 모두 같은 하늘색으로 칠해진 것을 확인할 수 있습니다.

 

 

 

히트맵은 보통 변수들 간의 상관계수를 시각화 하는데 많이 사용됩니다다음은 SASHELP라이브러리에 있는 CARS데이터셋을 행렬로 불러들인 후 HEATMAPCONT 서브루틴의  XVALUES=, YVALUES= 옵션을 사용하여 상관계수를 히트맵으로 시각화 한 것 입니다.

 

yErh0LMgAAAABJRU5ErkJggg__.png

 

00.PNG

 

0.PNG

 

 

 

 

 

 

 

 마치며

오늘은 IML 프로시져의 HEATMAPCONT서브루틴을 사용하여 행렬을 히트맵으로 시각화 하는 방법에 대해 알아보았습니다히트맵은 데이터에 내재 되어있는 패턴을 드러내주는 중요한 시각화 기법으로 데이터를 탐색단계에서 많이 쓰입니다.

 

 

 

 

 

Reference

http://support.sas.com/documentation/cdl/en/imlug/67502/HTML/default/viewer.htm#imlug_langref_sect18...

Version history
Last update:
‎06-18-2020 01:41 AM
Updated by:
Contributors

sas-innovate-white.png

Missed SAS Innovate in Orlando?

Catch the best of SAS Innovate 2025 — anytime, anywhere. Stream powerful keynotes, real-world demos, and game-changing insights from the world’s leading data and AI minds.

 

Register now

Article Labels
Article Tags