SAS 9.2中的得分

时间:2016-03-21 17:40:51

标签: model sas glm scoring

是否有人使用SAS中的proc glm结果创建了手动代码来对数据集进行评分?

注意:在这项研究中,有两个不同的程序,有两个不同程序的3个版本。 X01 X02 X03 Y01 Y02 Y03

proc glm data=maindata;
 class program_group;
 model program_score = prog_group TOBACCO DRUGS ALCOHOL age_on_admit 
                      yrs_in_program stand_test_score
                      / solution ss1 ss3;
      format program_group $program_group.
;
output out = results predicted=phat r=resid;
ods output parameterestimates = out.program_test_year1;
run;

如果我打算手动读取参数估计并获得另一个数据集,我是否需要在运行proc glm时为6个不同的程序组创建虚拟变量?

1 个答案:

答案 0 :(得分:2)

编辑:既然你有SAS 9.2,那么你应该使用PROC SCORE。 另一个技巧是将数据包含在模型数据中,并将y / dependent值留空。如果您获得了评分数据的输出集,则还会对其他数据进行评分。您可以通过OUTPUT out=want p=predicted;

获取此信息

有PROC SCORE和其他几种方式。 CODE声明是新的,未被充分利用 - 可能是您正在寻找的。

proc glm data=A noprint;
model y = x | x | x;  
code file='glmScore.sas';
quit;

data Pred;
set ScoreX;
%include 'glmScore.sas';
run;

查看此处逐条列出的方式列表: http://blogs.sas.com/content/iml/2014/02/19/scoring-a-regression-model-in-sas.html