如何使用 DO-LOOP 获得增加的变量名称系列?

How can I obtain increasing series of name of variable using a DO-LOOP?

我想获得这样的东西:

variable_1
variable_2
variable_3
variable_4

来自 SAS 中的 DO-LOOP,以便在同一宏中使用这些变量。我该怎么做?

这个宏创建了一个列表 variable1-variable4。

%macro m;
%do i = 1 %to 4;
variable_&i.
%end;
%mend;

%put %m;

如果您使用基于变量的数组,您可能根本不需要宏。

data want;
  set have;

  array vars variable_1-variable_4;

  do index = 1 to dim(vars);
    ... vars(index) ...   /* access ith arrayed variable */
  end;

/* more code */
run;