options ps=54 ls=76 nodate nonumber; goptions reset=all dev=pdf gsfname=output gsfmode=replace; data ballistic1; infile 'I:\data\ballistic1.txt'; input bullettype 8 layers 15-16 v50 18-24 sharp 32 fsp 40; v50_sq = (v50/100)**2; layers_sharp = layers*sharp; layers_fsp = layers*fsp; run; proc reg; model v50_sq = layers sharp fsp layers_sharp layers_fsp; model v50_sq = layers sharp fsp; model v50_sq = layers; run; data xv1; do layers = 0 to 40; bullettype=1; output; end; data xv2; do layers = 0 to 40; bullettype=2; output; end; data xv3; do layers = 0 to 40; bullettype=3; output; end; data ballistic1x; set ballistic1 xv1 xv2 xv3; run; proc sort; by layers; run; proc reg data=ballistic1x noprint; where bullettype=1; model v50_sq = layers; output out=regout1 p=pred1; run; proc reg data=ballistic1x noprint; where bullettype=2; model v50_sq = layers; output out=regout2 p=pred2; run; proc reg data=ballistic1x noprint; where bullettype=3; model v50_sq = layers; output out=regout3 p=pred3; run; data regout1 regout1o regout1p; set regout1; y1=v50_sq; if v50_sq=. then output regout1p; else output regout1o; run; data regout2 regout2o regout2p; set regout2; y2=v50_sq; if v50_sq=. then output regout2p; else output regout2o; run; data regout3 regout3o regout3p; set regout3; y3=v50_sq; if v50_sq=. then output regout3p; else output regout3o; run; proc sort data=regout1p; by layers; run; proc sort data=regout1o; by layers; run; proc sort data=regout2p; by layers; run; proc sort data=regout2o; by layers; run; proc sort data=regout3p; by layers; run; proc sort data=regout3o; by layers; run; data plotreg; merge regout1p regout2p regout3p regout1o regout2o regout3o; by layers; run; symbol1 c=black v=star; symbol2 c=red v=dot; symbol3 c=green v=diamond; symbol4 c=black i=join l=1; symbol5 c=red i=join l=2; symbol6 c=green i=join l=3; filename output 'I:\data\ballistic1_sas.pdf'; proc gplot; plot y1*layers=1 y2*layers=2 y3*layers=3 pred1*layers=4 pred2*layers=5 pred3*layers=6 / overlay frame; title 'V50^2 versus Layers by Bullet Type'; run; quit;