这是我的第一个宏,所以如果我错过了一些简单的东西,我深表歉意。
我需要执行相同的数据步骤六(或更多)次,并将每一个附加到第一个,所以我在宏中尝试了一个 do-loop。删除循环后一切正常,但是一旦添加了 do-loop,我就会收到错误,说我有一个额外的 %end 或一个无关的 %mend。欢迎所有想法。谢谢!
%macro freeze_samples(orig_file=, samples= , Start_Freeze_Incr=,
End_Freeze_Incr= );
%do i = 1 %to &samples;
data freeze_slice_&i;
set &orig_file;
(do stuff)
run;
* If we have more than one slice, append to previous slice(s).;
%if &i > 1 %then %do;
proc append base = temp_1 data = temp_&i;
run;
%end;
%end;
%mend;