全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
7050 10
2013-01-04
ods listing close;
ods output Autocorrelations=aa;
proc arima data=group1;identify var=avg;run;
ods listing;
上面的代码有错误吗?为什么sas有时可以正常运行,而有时却又警告如下:
WARNING: 未创建输出“Autocorrelations”。请确保输出对象名称、标签或路径拼写正确。
         还需确保使用了相应的过程选项来生成请求的输出对象。如,确保没有使用 NOPRINT 选项。
WARNING: 当前的 ODS SELECT/EXCLUDE/OUTPUT 语句被清除,因为检测到 PROC 步的结尾。
         其原因可能包括交互式过程的无终止(键入 quit; 结束过程)和不带输出的运行组。
这是为什么那?!为什么有时正确有时有警告,对这现象万分的不解,急求解,十分感谢!

二维码

扫码加我 拉你入群

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

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

全部回复
2013-1-5 08:59:13
这不是语法错误。系统找不到你所指定的对象“ Autocorrelations”。
二维码

扫码加我 拉你入群

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

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

2013-1-5 17:15:21
可是我查询的输出对象,无论是用输出对象的标签还是名称等都有类似的警告。
查询输出对象代码如下:ods trace onl/label listing;
                                  proc arima data=a;identify var=avg;run;
                                  ods trace off;
查询输出对象结果如下:Output Added:
-------------
名称:      AutoCorrGraph
标签:      Autocorrelations
模板:      ets.Arima.CorrGraph
路径:      Arima.Identify.AutoCorrGraph
标签路径:  'Arima PROCEDURE'.'Identification 1'.'Autocorrelations'
-------------


                                          Autocorrelations

   Lag    Covariance    Correlation    -1 9 8 7 6 5 4 3 2 1 0 1 2 3 4 5 6 7 8 9 1      Std Error

     0      2428.501        1.00000    |                    |********************|             0
     1      2286.315        0.94145    |                  . |******************* |      0.044721
     2      2151.823        0.88607    |                 .  |******************  |      0.074467
     3      2023.999        0.83344    |                .   |*****************   |      0.093198
     4      1903.609        0.78386    |                .   |****************    |      0.107071
     5      1791.106        0.73754    |               .    |***************     |      0.117992
ods的语法不是允许用输出对象的标签或名称等作为输出对象吗?并且在其他过程步中我用类似的操作是对的,求解!十分感谢!
二维码

扫码加我 拉你入群

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

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

2013-1-25 19:17:01
ods listing close;
ods output AutoCorrGraph=aa;
proc arima data=group1;identify var=avg;run;
ods listing;
把标签改成名称,试试。
二维码

扫码加我 拉你入群

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

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

2013-1-26 18:06:55
luckychll 发表于 2013-1-25 19:17
ods listing close;
ods output AutoCorrGraph=aa;
proc arima data=group1;identify var=avg;run;
谢谢您啊。试过了,还是那种情况。不过加上了obs trace on和ods trace off可以实现,就是不明白原因?!
%macro autocorr(r);
%do i=1 %to &r;ods listing close;ods output AutoCorrGraph=autocorr&i;
ods trace on;proc arima data=group&i; identify var=avg;run;ods trace off;ods listing;quit;
data autocorr&i;set autocorr&i(firstobs=2 obs=2);run; %end;
%mend autocorr;
%autocorr(60);
上面的代码可以正常运行的。
二维码

扫码加我 拉你入群

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

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

2013-1-26 19:19:32
fyfzhdsfdx 发表于 2013-1-26 18:06
谢谢您啊。试过了,还是那种情况。不过加上了obs trace on和ods trace off可以实现,就是不明白原因?!
...
我好像也碰到过这种情况。后来就习惯每次加ODS TRACE ON语句啦。
二维码

扫码加我 拉你入群

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

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

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群