【发布时间】:2013-12-06 06:58:16
【问题描述】:
简介: 从一个数据集中获取模型并应用于另一个数据集以找到 RMSE。
说,我有数据集“data100”
并运行以下选择操作以确定重要变量:
PROC REG DATA =data100;
model y= x0-x999 / selection=forward SLENTRY=.01;
run;quit;
它返回 x0 x10 x20 x30 x40 x50 x60 x70 x80 x90 在 <.0001>
为什么我不能直接使用:
PROC REG DATA =data1000;
model y= x0 x10 x20 x30 x40 x50 x60 x70 x80 x90;
run;quit;
要确定data1000集的RMSE?
出现这个问题的原因是一位导师告诉我使用:
proc reg=data100 outest=data100est;
model y= x0-x999;
run;quit;
proc score data=data1000 score=data100est out=data1000p residual type=parms;
var y x0-x999;
run;
proc univariate data=data1000P;
var model1;
output out=data1000stat uss=ss1;
run;
data data1000stat;
set data1000stat;
rmse=sqrt(ss1/1000);
run;
proc print data=data1000stat;
run;quit;
我对这一点感到非常困惑,如果有人能澄清 why 甚至 if proc 分数在这里是合适的,那就太好了。
【问题讨论】:
-
明确标记迁移到Cross Validated - 这是一个统计学家的问题,而不是程序员。
标签: statistics sas regression