遍历多行并输出相关的数据集SAS 9.4

时间:2019-05-06 21:32:15

标签: macros sas

我有一个数据集,它是长数据。每个主题都有52周的信息。

我想要的输出是:

    data new1 new2 new3 ... new52;
    set old;
    if week = 1 then output new1;
       else if week = 2 then output new2;
       else....;
    run;.

因为有52周,所以我想写一个宏。不知道该怎么办...

1 个答案:

答案 0 :(得分:0)

请参见下面使用宏创建52个数据集的代码。

data old;
do week=1 to 52;
output;
end;
run;

%macro new(i);
data new&i;
 set old;
 if week=&i then output;
run;
%mend new;

%macro loop;
%do j=1 %to 52;
 %new(&j);
%end;
%mend loop;

%loop;