2

我正在尝试在 SAS 中编写一个程序,以支持选择线性回归模型的最佳公式的决策过程。我什至有一个,但在 R 环境中。现在我必须在 SAS 中实现它。最终结果应该是一个数据集,每行描述不同的回归公式,即解释变量的名称、R 平方、不同统计测试的 p 值等。

例如,其中一项测试是自相关的 Durbin-Watson 测试。我的目标是在我提到的表中插入一个 p 值。我使用代码:

proc reg data=indata outest=outdata EDF ridge=0 OUTVIF;
   model PKB = PK INV SI / DW;
run;
quit;

结果我进入了输出窗口:

Durbin-Watson Statistics
Order            DW    Pr < DW    Pr > DW
    1          1.2512     0.0038     0.9962

我想将这些 p 值直接插入 SAS 表中。我试图在 SAS OnlineDoc 和论坛上找到答案,但没有成功。

4

1 回答 1

2

ODS OUTPUT是获取可以在屏幕上打印到数据集的信息的最佳方式。在你的代码之前使用ODS TRACE ON;,运行它,然后检查日志;查看什么表名与您要查找的内容匹配。然后使用ODS OUTPUT <tablename>=<datasetname>.

例如,在 this 中PROC FREQ,我看到ONEWAYFREQS的是我想要的表。

ods trace on;
proc freq data=sashelp.class;
var age;
run;
ods trace off;

所以我使用 ODS 输出:

ods output onewayfreqs=ages;
proc freq data=sashelp.class;
table age;
run;
ods output close;

并获得一个不错的数据集。(ODS TRACE如果您知道要查找的表的名称,则不需要。)

于 2014-01-27T14:36:20.137 回答