楼主: melody21
2712 4

[问答] SAS Macro程序运行特别特别慢 [推广有奖]

  • 4关注
  • 6粉丝

已卖:5份资源

讲师

49%

还不是VIP/贵宾

-

威望
0
论坛币
3179 个
通用积分
461.8854
学术水平
36 点
热心指数
48 点
信用等级
36 点
经验
138 点
帖子
349
精华
0
在线时间
544 小时
注册时间
2007-7-14
最后登录
2025-12-31

楼主
melody21 发表于 2014-8-14 23:15:52 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
SAS跑其它程序正常,但在读macro程序时跑得特别特别慢,还不是运行。
一直显示正在运行。
按道理,应该光速实现阿。

比如说下面的例子,
%macro aaa (in,out);
data &out;
set ∈

if substr(date,
1,2) in( '10','11','12') then do;
month= substr(date,
1,2) ;
if substr(date,
5,1)='/' then year=substr(date,6,4);
else year=substr(date,
7,4);
output;
end;

run;
%mend aaa;
SAS就一直在那读。。。因为没读完,也没有LOG可以看。
请教各位,这是为什么啊?

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:Macro acr CRO Mac SUBSTR

沙发
pobel 在职认证  发表于 2014-8-15 07:08:38
一直读具体是什么?

我能想到的一个可能的原因是宏的定义中有参数%macro aaa (in,out);, 但在调用的时候没有加括号,而是直接%aaa.

藤椅
yongyitian 发表于 2014-8-15 08:12:10
这段程序貌似没有问题, 但 date应该是字符变量.  
貌似在前面编译或运行的宏中有不匹配的引号,括号,分号等,  既缺少  ' " ; ).

Try to 多次运行 下面这行 code

*'; *"; *); */; *;;  %mend;  run;

直到在log中看到:ERROR: No matching %MACRO statement for this %MEND statement.

再不行,  就只能重新起动 sas了。

板凳
melody21 发表于 2014-8-15 21:27:30
pobel 发表于 2014-8-15 07:08
一直读具体是什么?

我能想到的一个可能的原因是宏的定义中有参数%macro aaa (in,out);, 但在调用的时候 ...
一直读的表现就是,RUN按钮灰色,stop红色。
而且这里只是读如上这一段程序,还不是macro的调用。
每次数据更新时,这段程序都运行的,以前都工作正常,最近几次出现了这个问题。

报纸
melody21 发表于 2014-8-15 22:20:53
谢谢 pobel,yongyitian
问题解决了。我找IT部门把我的帐号清除,然后重新登陆服务器,现在就好了。
谢谢!!

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

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