data in; input RUN PH TEMP CONC P_RATIO @@; cards; 16 4.0 35 50 0.04716 3 4.0 35 500 0.07468 8 4.0 55 275 0.07734 4 4.0 75 50 0.09528 15 4.0 75 500 0.07521 11 5.5 35 275 0.00810 17 5.5 55 50 0.02182 1 5.5 55 275 0.01673 9 5.5 55 275 . 10 5.5 55 275 0.01169 18 5.5 55 275 0.00805 5 5.5 55 500 0.01131 7 5.5 75 275 0.00987 6 7.0 35 50 0.00000 14 7.0 35 500 0.00127 13 7.0 55 275 0.00234 12 7.0 75 50 0.01912 2 7.0 75 500 0.00279 20 4.0 35 50 0.05598 30 4.0 35 500 0.05096 31 4.0 55 275 0.10859 32 4.0 75 50 0.03127 24 4.0 75 500 0.05732 25 5.5 35 275 0.00704 23 5.5 55 50 0.00913 19 5.5 55 275 0.00795 27 5.5 55 275 0.01290 28 5.5 55 275 0.00723 36 5.5 55 275 0.00718 35 5.5 55 500 0.01045 29 5.5 75 275 0.00677 33 7.0 35 50 0.00000 22 7.0 35 500 0.00090 26 7.0 55 275 0.00150 21 7.0 75 50 0.01486 34 7.0 75 500 0.00112 ; PROC RSREG DATA=IN; MODEL P_RATIO = PH TEMP CONC / LACKFIT ; RIDGE MAX MIN OUTR=RDG RADIUS=0 TO 1.7 BY .1; TITLE H=.8CM F=SWISS 'RIDGE ANALYSIS USING RSREG'; DATA RDG (DROP=_PRED_); SET RDG; IF _TYPE_='MINIMUM' THEN PMIN = _PRED_; IF _TYPE_='MAXIMUM' THEN PMAX = _PRED_; SYMBOL1 INTERPOL=SPLINE VALUE=CIRCLE; PROC GPLOT DATA=RDG; PLOT PMIN*_RADIUS_=1 PMAX*_RADIUS_=2 / OVERLAY; LABEL _PRED_='RIDGE VALUE'; DATA RDG; SET RDG; PH = (PH-5.5)/1.5; TEMP = (TEMP-55)/20; CONC = (CONC-275)/225; PROC SORT DATA=RDG; BY _TYPE_; PROC GPLOT DATA=RDG; BY _TYPE_; PLOT PH*_RADIUS_='P' TEMP*_RADIUS_='T' CONC*_RADIUS_='C' / OVERLAY VREF=0 ; TITLE H=.8CM F=SWISS 'CODED RIDGE COORDINATES'; RUN;