0

我想替换一些变量的值并重命名它们。基本上,我有很多变量,称为 f2 f3 f4 等等,直到 f1065。逻辑如下:我需要用变量 f2 f3 f4 到 f12 的值将变量 f14 f18 等的值替换为 4 到 f54。f13、f55、f56 和 f57 保持原样。然后我需要用 f58 f59 到 f68 的值将 f70 f74 等替换为 4 到 f110。所以 f69 不变。所以我需要说SAS以下内容:

let k=2
do i=4 to 57 by 4;
f&i=f&k;
end;
k=&k+1;

并多次这样做,以便下一次

let k=58
do i=70 to 113 by 4;
f&i=f&k;
end;
k=&k+1;

我怎样才能使这项任务自动化,甚至可能删除我用于替换的变量(我的意思是像 f2 f3 f4 ... f12 这样的变量)。提前致谢!

4

1 回答 1

0

您可以使用数组来完成此操作。只需为变量的一部分定义一个数组,然后使用索引来遍历它们。信息:http ://www2.sas.com/proceedings/sugi30/242-30.pdf

你也可以用宏变量来做,但由于宏增加了复杂性,除非你真的需要,否则几乎总是最好避免。

于 2014-07-14T18:18:41.473 回答