SAS(十一)DATA步--信息语句
数组(array)语句
- 当需要用同一种方法处理很多变量时,可以用数组语句定义这组变量为某个数组中的元素。
- 1.显示下标array语句:由一个数组名字,在数组中元素个数的说明,及元素列表组成。
- 2.隐含下标array语句:由一个数组名字、一个下标变量和列表名组成。
- 形如:
ARRAY array-name {subscript} <$> <<array-elements><(initial-values)>>
例 array simple{3} red green yellow;
array x{5,3} score1-score15;
array c{3} 等价于 array c{3} c1-c3
array test{3} t1 t2 t3 (90 80 70)
数组中的变量必须全是数值型或字符串型, array 例
例 array simple{3} red green yellow;
array x{5,3} score1-score15;
array c{3} 等价于 array c{3} c1-c3
array test{3} t1 t2 t3 (90 80 70)
数组中的变量必须全是数值型或字符串型, array 例
- 规定数组中每一维的上下界:
array x{1:5,1:3} score1-score15;
- {*}表示SAS系统通过数组中变量的个数来确定下标。可用dim(数组名)函数计算数组元素个数。
- _temporary_建立一个临时数组元素列表
data zz;
input d1-d7;
array day(*) d1-d7;
do i=1 to dim(day);
day(i)=day(i)+10;
end;
drop i;
cards;
99 11 22 222 22 3 44
1 2 3 4 5 6 7
;
run;
PROC PRINT;RUN;
data a;
input x1-x5;
cards;
1 2 3 4 5
2 3 4 5 6
4 5 6 7 8
;
run;
data b;
set a;
array test(5) x1-x5;
prod=0;
do i=1 to dim(test)-1;