sas array문 사용
Array 문 사용
What is Array?
우리가 일반적으로 변수를 선언하는데 연속적으로 변수를 지정하고 반복적으로 변수를 이용하여 연산을 해야 하는 경우가 많으실 겁니다. 이때 Array 를 이용하시면 효율적으로 연산이 가능합니다.ARRAY array-name{dimension} $ length elements (initial values) ;
ARRAY 는 :
-반복적인 계산 수행, 동일한 속성을 갖는 여러 변수 생성 등의 작업에서
프로그램을 단순화 하기 위해 사용 할 수 있습니다.
-모든 문자형/숫자형의 Array 를 생성할 수 있습니다.
-여러 개의 값을 Array에 저장하여 사용할 수 있습니다.
-Array 의 Eliment 별로 다른 TYPE 을 지정할 수는 없습니다.
(문자형이면 문자형, 숫자형이면 숫자형)
- DataStep 에서만 사용 가능합니다.
설명 : 위의 그림은 ARR_VAR 라는 Array 변수를 4개의 Elements 를 선언한 것에 대한 그림입니다. 자세한 사용법은 아래에 설명 드리겠습니다.
EMP_ID |
QTR1 |
QTR2 |
QTR3 |
QTR4 |
A1334 |
3214 |
3232 |
3223 |
2122 |
A2345 |
2214 |
3232 |
3000 |
3122 |
A5433 |
3814 |
1932 |
1223 |
2522 |
A3223 |
3900 |
4332 |
3323 |
2722 |
A4324 |
3000 |
2332 |
4323 |
2822 |
A7654 |
2004 |
2000 |
4123 |
2922 |
데이터셋 구조는 사번(EMP_ID)과 각각의 분기별(QTR1-QTR4) 실적값으로 되어 있으며, 사번 별로 분기별 실적값을 1.25% 의 이율을 추가하고자 합니다.
(기존변수를 이용하여 새로운변수생성)
DATA array_sample(drop = i);
SET emp_qtr;
/* arr_var 의 4개의 element 로 선언하고, qtr1-qtr4 의 데이터셋의 변수값을 선언 */
ARRAY arr_var{4} qtr1-qtr4;
/* newqtr1-newqtr4 숫자형 변수 생성 */
ARRAY arr_new{4} newqtr1-newqtr4;
/* 4분기가 있으므로 4번의 Looping 을 실행함 */
DO i=1 to Dim(arr_var);
/* 분기별 실적값을 Array 로 저장하여 1.25의 이율을 연산 */
arr_new{i} = arr_var{i}*1.25;
END;
RUN;
출처:SAS Korea 기술지원팀
'개발관련' 카테고리의 다른 글
SAS DATASET에서 FIRST, LAST, END 옵션의 활용법 (0) | 2009.06.09 |
---|---|
sas 문자함수 (3) | 2009.06.09 |
sas format문 (0) | 2009.06.09 |
sas datastep retain 기능을 활용한 증가율구하는 프로그램 (0) | 2009.06.09 |
sas와 엑셀로 기하평균 구하기 (0) | 2009.06.08 |