如何在SAS循环中引用i

时间:2015-05-30 01:07:03

标签: loops sas

说我有这段代码:

data Work.dataset;
do i = 3 to 7;
    %let mname = text;
    %let mname = &mname.i;
end;
run;

我希望i中的%let mname = &mname.i;引用i = 3 to 7而不是引用i。我怎样才能做到这一点?

我想找到的真正问题可以在这里找到:Loop over strings and read in files and save我试图找到一种方法来做到这一点。这个问题试图解决这个更大问题的一部分。

1 个答案:

答案 0 :(得分:0)

您无法在数据步骤中使用%let,请使用呼叫同情。

效果更好。我希望这是你想要的。

data Work.dataset;

    do i = 3 to 7;
        mname1 = 'text';
        mname2 = mname1||put(i,1.);
        call symput('mname3',mname2);
        put mname2;
        output;
    end;
run;

%put mname3=&mname3;