是否有人使用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个不同的程序组创建虚拟变量?
答案 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