【发布时间】:2015-12-17 19:30:29
【问题描述】:
我想在一个数据步骤中定义多个宏变量。在这种情况下,我想创建变量&buffer1, &buffer2, &buffer3, &buffer4。
缓冲区的数量是可变的,所以我无法硬编码这些变量的创建。
这是我目前使用的数据步骤和循环:
%let buffers = 4;
data buffer;
do buffer_number = 1 to &buffers;
buffer_queue = 0;
buffer_index = 0;
output;
end;
run;
我想做的是在 do 循环中添加一行,例如 %let buffer_buffer_number = 0;。这显然行不通,因为它只是创建了变量&buffer_buffer_number。有什么方法可以使用do循环索引(buffer_number)来创建宏变量吗?
【问题讨论】: