我的情况 我希望一切顺利.我目前正在进行一项研究项目,处理大量不同库下的数据集.我创建了多个%宏定义,这些定义又生成了许多输出表并使用了许多输入表.这些表保存在不同的库下.
我的问题: 创建这些数据文件时,我的计算机速度变慢.清除每个宏程序会话中不需要的表会增加计算响应.
我的QUERY: 有没有办法生成每个宏程序使用PROC SQL或DATA步骤创建的输入和输出表列表?每个MACRO PROGRAM都有多个%宏,再次出于代码可读性的目的.使用"IN"或"OUT"语句对数据文件进行前缀/后缀无济于事.这将有助于我进行数据管理.
您可能有两个选择:解析日志文件或在每次宏调用之前和之后创建dictionary.tables的快照并提取差异.我更喜欢(更容易:))第二个选项,例如喜欢
PROC SQL;
CREATE TABLE BEFORE AS SELECT CATS(libname,".",memname) AS fname FROM DICTIONARY.tables WHERE libname in ('WORK');
QUIT;
PROC SQL;
CREATE TABLE AFTER AS SELECT CATS(libname,".",memname) AS fname FROM DICTIONARY.tables WHERE libname in ('WORK') AND calculated fname not in (select fname FROM BEFORE);
QUIT;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
86 次 |
| 最近记录: |