作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试以下代码:
proc IML;
do i=1 to 20;
[some codes to execute]
data[i];
end;
QUIT;
所以我期望在完成 do 循环后得到 20 个数据集。在 SAS 中可以吗?我可以使用 宏 来完成,但我不喜欢在 PROC IML
中使用宏!
提前致谢。
最佳答案
如果您有 SAS/IML 12.1,它于 2012 年 8 月作为 SAS 9.3m2 的一部分发布,那么您只需将每个数据集的名称括在括号中,就像这样
proc iml;
names = "Data1":"Data20";
do i = 1 to ncol(names);
x = i;
dsname = names[i]; /* construct each name */
create (dsname) from x;
append from x;
close (dsname);
end;
完整的程序和解释见文章最后一个例子"Read data sets that are specified by an array of names."
关于sas - 如何在 SAS/IML 中使用 do 循环制作多个数据集?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29334078/
我是一名优秀的程序员,十分优秀!