Documentation Examples for PROC SCORE
/****************************************************************/
/* S A S S A M P L E L I B R A R Y */
/* */
/* NAME: scoreex1 */
/* TITLE: Documentation Examples for PROC SCORE */
/* PRODUCT: STAT */
/* SYSTEM: ALL */
/* KEYS: Scoring */
/* PROCS: SCORE, FACTOR, REG, PRINT */
/* DATA: */
/* */
/* SUPPORT: sasahk */
/* REF: PROC SCORE, Example 1, 2 and 3 */
/* MISC: */
/* */
/****************************************************************/
/* This data set contains only the first 12 observations */
/* from the full data set used in the chapter on PROC REG. */
data Fitness;
input Age Weight Oxygen RunTime RestPulse RunPulse @@;
datalines;
44 89.47 44.609 11.37 62 178 40 75.07 45.313 10.07 62 185
44 85.84 54.297 8.65 45 156 42 68.15 59.571 8.17 40 166
38 89.02 49.874 9.22 55 178 47 77.45 44.811 11.63 58 176
40 75.98 45.681 11.95 70 176 43 81.19 49.091 10.85 64 162
44 81.42 39.442 13.08 63 174 38 81.87 60.055 8.63 48 170
44 73.03 50.541 10.13 45 168 45 87.66 37.388 14.03 56 186
;
proc factor data=Fitness outstat=FactOut
method=prin rotate=varimax score;
var Age Weight RunTime RunPulse RestPulse;
title 'Factor Scoring Example';
run;
proc print data=FactOut;
title2 'Data Set from PROC FACTOR';
run;
proc score data=Fitness score=FactOut out=FScore;
var Age Weight RunTime RunPulse RestPulse;
run;
proc print data=FScore;
title2 'Data Set from PROC SCORE';
run;
proc reg data=Fitness outest=RegOut;
OxyHat: model Oxygen=Age Weight RunTime RunPulse RestPulse;
title 'Regression Scoring Example';
run;
proc print data=RegOut;
title2 'OUTEST= Data Set from PROC REG';
run;
proc score data=Fitness score=RegOut out=RScoreP type=parms;
var Age Weight RunTime RunPulse RestPulse;
run;
proc print data=RScoreP;
title2 'Predicted Scores for Regression';
run;
proc score data=Fitness score=RegOut out=RScoreR type=parms;
var Oxygen Age Weight RunTime RunPulse RestPulse;
run;
proc print data=RScoreR;
title2 'Negative Residual Scores for Regression';
run;
/* The FITNESS2 data set contains observations 13-16 from */
/* the FITNESS data set used in EXAMPLE 2 in the PROC REG */
/* chapter. */
data Fitness2;
input Age Weight Oxygen RunTime RestPulse RunPulse;
datalines;
45 66.45 44.754 11.12 51 176
47 79.15 47.273 10.60 47 162
54 83.12 51.855 10.33 50 166
49 81.42 49.156 8.95 44 180
;
proc print data=Fitness2;
title 'Regression Scoring Example';
title2 'New Raw Data Set to be Scored';
run;
proc score data=Fitness2 score=RegOut out=NewPred type=parms
nostd predict;
var Oxygen Age Weight RunTime RunPulse RestPulse;
run;
proc print data=NewPred;
title2 'Predicted Scores for Regression';
title3 'for Additional Data from FITNESS2';
run;
data A;
input _type_ $ _name_ $
Age Weight RunTime RunPulse RestPulse;
datalines;
SCORE AGE_WGT 1 -1 0 0 0
SCORE RUN_RST 0 0 0 1 -1
SCORE TOTAL 1 1 1 1 1
;
proc print data=A;
title 'Constructed Scoring Example';
title2 'Scoring Coefficients';
run;
proc score data=Fitness score=A out=B;
var Age Weight RunTime RunPulse RestPulse;
run;
proc print data=B;
title2 'Scored Data';
run;