使用字符变量访问数组元素

时间:2018-07-29 00:56:22

标签: sas

假设我有一个名为dk33的数组和一个字符串t =“ dk33”,是否可以使用t来访问数组dk33中的元素。

data _null_;
array dk33(2) _temporary_;
dk33(1)='a';
dk33(2) ='b';
t = "dk33";
put t(1); <-- what can be done here to access the array element 1 in dk33 array?
run;

1 个答案:

答案 0 :(得分:0)

您将需要使用IF / THEN逻辑。

if t = "dk33" then put dk33(1);

如果使用永久变量而不是临时变量,则可以使用VVALUEX()函数通过其名称获取变量的格式化值,但是不能使用数组引用。

data _null_;
  array y (4) (1:4) ;
  t='y';
  length want $32;
  want=vvaluex(cats(t,1));
  put want;
run;