SAS:遍历列名

SAS: Looping over column names

我有一个具有以下结构的数据集:

data account;
   input Index c1 c2 c3 c4 c5 c6 ;
   datalines;
4 30 20 10 30 40 20 
3 50 20 30 50 10 20
;
run;

在我的文件中,有 150 多列 "c"-Type 包含数字。在每一行中,我想对索引变量的 c: 列求和并将总和放入新列中。在第一行中,Index 变量为 4,因此结果应为 sum = c1 + c2 + c3 + c4。第二行,Index为3,所以应该是sum = c1 + c2 + c3.

如何处理这样的列?我必须先将它们读入数组吗?

试试这个:

data want;
  set account;
  array vars c:;
  sum=0;
  do i=1 to index;
     sum+vars(i);
  end;
  drop i;
  run;