这里的内部循环(标有********)是否正常,还是需要使用%eval()? (我认为我不需要%eval(),因为没有宏变量。)
do _i = 1 to 5;
if sp_id_array{_i} ne . then do;
do _j = (_i+1) to 5; *********;
if sp_id_array{_j} ne . then do;
sp_id = sp_id_array{_i};
sp_partner_id = sp_id_array{_j};
output;
end;
end;
end;
end;
答案 0 :(得分:0)
那没关系; SAS将自动使用(_i+1
)。实际上,您可以在循环内修改循环控制变量。
data _null_;
do _i = 1 to 5;
put _i=;
_i=5;
end;
run;