SAS Enterprise Guide日志行号没有意义

时间:2013-11-13 19:43:49

标签: sas enterprise-guide

我在运行程序时会在日志中收到警告,但是说出警告的行号没有意义。我复制了下面的部分日志。它表示操作发生在第4229行,但我的代码中只有1500行,警告位于日志中的第1895行。当我的代码中只有1500行时,为什么告诉我警告发生在第4229行?

  

警告:除以零,结果设置为缺失值。

计数:出现次数为201次  操作:/第4229行第11行  操作数:_TEM1001,_TEM1002 _TEM1001 1行201列(数字)

_TEM1002 1行1 col(数字)

     0

声明:ASSIGN在第4228行第245行 警告:除以零,结果设置为缺失值。

计数:出现次数为201次  操作:/第4229行第43行  操作数:_TEM1001,_TEM1003 _TEM1001 1行201列(数字)

_TEM1003 1行1 col(数字)

     0

1 个答案:

答案 0 :(得分:0)

如上所述,宏正在为您生成SAS代码,使提交的SAS行数超过代码中的行数。

启用MPRINT以查看导致问题的代码。从您的错误行,看起来您正在使用IML。这是一个例子:

%macro loop_then_error();
%do i=10 %to 0 %by -1;
proc iml;
x = {1 1};
x = (x || x) / &i;
quit;
%end;
%mend;

options nomprint;
%loop_then_error;

options mprint;
%loop_then_error;