楼主: tangb
3755 14

谁能帮忙给个思路? 我想批量处理199家公司 的年数据集 [推广有奖]

11
horace_chen 发表于 2009-9-1 11:41:43
10# buteo

我记得是SET要把所有SET的数据集遍历,而APPEND只需要里遍历添加的数据集,所以效率会比SET高

12
tangb 发表于 2009-9-1 12:19:21
horace_chen,buteo:

提醒的好。谢谢!

确实我的程序实在没什么美观效率可言。我目前是想先把大流程走通。下一步再考虑怎样优化代码.你看我对宏的肤浅认识就了解我还是菜鸟。

关于excel 表驱动的问题。我倒有个更通用的问题:怎样将 数据集的变量传递给data 步的控制变量。例如:循环终止值?

horace_chen
能不能帮我看看我那俩个问题?

13
horace_chen 发表于 2009-9-1 12:31:52
7# tangb

1、要先编译%SAMPLE才能在%TRADE中调用%SAMPLE,不然会提示错误。

2、宏中调用宏不需要&&,间接引用宏变量才需要&&。


3、将数据集的变量传递给data 步的控制变量的方法比较常用的有call symput()和PROC SQL中的select into语句。

14
tangb 发表于 2009-9-1 12:39:06
实在过意不去了。先设最佳吧。再问一个问题:

%macro sample;
  %do k=1 % to 365;
Data  sample.F;
           set sample.E;
           where num = &k;
run;


这段代码,放在整个代码的最开始。

sas编译的时候找不到 sample.e这个数据集怎么办?毕竟开始的时候,数据集E还没生成。

15
tangb 发表于 2009-9-1 13:32:15
infile “d:\sas\data\20090819 tanscation data aot\data&number..csv”

是不是这样引用 不同的文件?

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-22 01:07