BookmarkSubscribeRSS Feed

[SAS 프로그래밍] 여러 개의 열의 데이터 요약하기

Started ‎06-17-2020 by
Modified ‎06-17-2020 by
Views 317

[SAS 프로그래밍] 여러 개의 열의 데이터 요약하기

 

 

안녕하세요^^

 

​이번 시간에는 여러 개의 열의 데이터를 요약하는 방법에 대해 알아보겠습니다.

 

 

 

▶ 예제데이터 생성하기

먼저 여러 개의 열이 있는 데이터를 요약하기 위해 여러 개의 열이 있는 예제 데이터를 만들어 보겠습니다.

 

x9xziF_8XMwAAAAAElFTkSuQmCC.png

 

D6jCFIbmOZLLAAAAAElFTkSuQmCC.png

 

 Data step을 사용하여 sales 데이터셋을 생성합니다

 

 변수는 salesperson, january, february, march로 각각 생성하였으며, salesperson은 판매사원의 이름을 입력하고 3개월에 해당하는 변수에는 판매량이 입력됩니다

 

 

 

 

▷ 매월 전체 판매량과 3개월 동안의 총 판매량을 보여주는 결과를 생성하려고 합니다

 

QOL_YT1XBWWsQAAAABJRU5ErkJggg__.png

 

8cTk9sF8wX4gAAAABJRU5ErkJggg__.png

 

▷ coding

 

PROC MEANS와 PROC TABULATE 프로시저를 사용하기 위해

세 변수(January, February, March)의 합을 grand 변수로 생성하여 sales1이라는 데이터셋으로 저장합니다.

 

 

 

 

 

▶ PROC MEANS 프로시저 이용하기

PROC MEANS 프로시저를 사용하여 여러 개의 열의 데이터를 요약하겠습니다.

즉, 매월 전체 판매량과 3개월 동안의 총 판매량을 보여주는 결과를 생성해보겠습니다.

 

8RPiuuhXvEKIDpblH0fTZxpoGAfUAAAAAElFTkSuQmCC.png

 

S707u3t9Co4Ms_eX02vHrgQORiTuK4dECI7IEQentPpM8OuJNt7D3jmAAAAAElFTkSuQmCC.png

 

▷ coding

 

 PROC MEANS 프로시저를 사용하여 여러 개의 열의 합계를 보여주는 코드를 작성하였습니다.

 

 자료는 grand 변수가 존재하는 sales1으로 사용합니다.

 

 특히 PROC MEANS 프로시저에 옵션으로 sum을 사용하면 합계 값만을 보여주며,

   maxdec=0을 사용하여 합계의 소수점 아래 자리수를 0으로 설정하였습니다.

 

 

▷ 결과

 

 January의 합계, February의 합계, March의 합계, grand의 합계를 각각 계산할 수 있습니다.

 

 

 

 

 

▶ PROC TABULATE 프로시저 이용하기

PROC TABULATE 프로시저를 사용하여 여러 개의 열의 데이터를 요약하겠습니다.

즉, 매월 전체 판매량과 3개월 동안의 총 판매량을 보여주는 결과를 생성해보겠습니다.

 

loUCzhGCCHOQLjTg1j1CJbFWeyWGAohxKP4JXo9YieEEFdBn_kJIZZC394KIZYiLXr6nE4IcWWqosdfSvQKHnZ5_l0DIcQZ0K_sC.png

 

bMAAAAAElFTkSuQmCC.png

 

▷ coding

 

 PROC TABULATE 프로시저를 사용하여 여러 개의 열의 합계를 보여주는 코드를 작성하였습니다.

 

 PROC TABULATE 프로시저에서는 var 문장과 tables 문장을 사용합니다.

 

 특히 tables 문장에 변수와 계산하고 싶은 기술통계량을 입력하면 각 변수의 기술통계량을 볼 수 있습니다.

 

 

▷ 결과

 

 January의 합계, February의 합계, March의 합계, grand의 합계를 각각 계산할 수 있습니다.

 위의 결과는 PROC MEANS의 결과와 구성은 다르지만 값은 같을 것을 확인할 수 있습니다.

 

 

 

 

 

▶ PROC REPORT 프로시저 이용하기

PROC REPORT 프로시저를 사용하여 여러 개의 열의 데이터를 요약하겠습니다.

즉, 매월 전체 판매량과 3개월 동안의 총 판매량을 보여주는 결과를 생성해보겠습니다.

 

wE_YhYwcWrUrAAAAABJRU5ErkJggg__.png

 

4n2XfCDgC2iNtYAE0g7AA0gbAD0ATCDkATCDsATSDsADRgt3sFYcDvG5is8TcAAAAASUVORK5CYII_.png

 

▷ coding

 

 PROC REPORT 프로시저를 사용하여 여러 개의 열의 합계를 보여주는 코드를 작성하였습니다.

 

 PROC REPORT 프로시저에서는 define 문장을 사용하여 원하는 변수의 원하는 기술통계량을 계산할 수 있습니다.

 

 특히 기술통계량 뒤에 원하는 열의 이름까지 지정할 수 있습니다.

 

 

▷ 결과

 

 January의 합계, February의 합계, March의 합계, grand의 합계를 각각 계산할 수 있습니다.

 위의 결과는 앞 선 두 결과와 구성은 다르지만 값은 같을 것을 확인할 수 있습니다.

 원하는 열의 이름을 한번에 지정할 수 있다는 것이 편리합니다.

 

 

 

 

 

▶ PROC SQL 사용하기

 

QlpsO0RCAAAAAElFTkSuQmCC.png

 

6F4MvgA4FDxqAvAHYIPgDsEHwB3CD4Azmw2LwC6gjsqf7b3xgAAAABJRU5ErkJggg__.png

 

▷ coding

 

 PROC SQL를 사용하여 여러 개의 열의 합계를 보여주는 코드를 작성하였습니다.

 

 select 문장에서 변수들의 세로 합을 계산할 수 있습니다.

 

 특히 calculated 를 사용하여 자료에는 없지만 자료에 추가하기 위해 같은 select 문 내에서계산한 변수를 더할 수 있습니다.

 

 

▷ 결과

 

 January의 합계, February의 합계, March의 합계, grand의 합계를 각각 계산할 수 있습니다.

 PROC SQL을 사용하면 앞선 프로시저를 사용한 방법들처럼 grand 변수를 추가한 새로운 데이터를 이용하지 않고 같은 결과를 얻을 수 있습니다.

 

 

 

 

 

 

 

이상으로 여러 개의 열의 데이터를 요약하는 방법에 대해 알아보았습니다.

감사합니다^^

 

 

 

[출처]

 http://support.sas.com/documentation/cdl/en/sqlproc/63043/HTML/default/viewer.htm#p016wt256y0c2on1dv...

 

 

 

Version history
Last update:
‎06-17-2020 10:05 PM
Updated by:
Contributors

sas-innovate-white.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.

 

Early bird rate extended! Save $200 when you sign up by March 31.

Register now!

Article Labels
Article Tags