title 'Arthritis treatment data'; proc format; value outcome 0 = 'not improved' 1 = 'improved'; data arthrit; length treat $7. sex $6. ; input id treat $ sex $ age improve @@ ; better = (improve > 0); _treat_ = (treat ='Treated') ; /* dummy variables */ _sex_ = (sex = 'Female'); agesex = age*_sex_ ; /* interactions with age */ agetrt = age*_treat_; sextrt = _sex_*_treat_; age2 = age*age ; format age 2.; cards ; 57 Treated Male 27 1 9 Placebo Male 37 0 46 Treated Male 29 0 14 Placebo Male 44 0 77 Treated Male 30 0 73 Placebo Male 50 0 17 Treated Male 32 2 74 Placebo Male 51 0 36 Treated Male 46 2 25 Placebo Male 52 0 23 Treated Male 58 2 18 Placebo Male 53 0 75 Treated Male 59 0 21 Placebo Male 59 0 39 Treated Male 59 2 52 Placebo Male 59 0 33 Treated Male 63 0 45 Placebo Male 62 0 55 Treated Male 63 0 41 Placebo Male 62 0 30 Treated Male 64 0 8 Placebo Male 63 2 5 Treated Male 64 1 80 Placebo Female 23 0 63 Treated Male 69 0 12 Placebo Female 30 0 83 Treated Male 70 2 29 Placebo Female 30 0 66 Treated Female 23 0 50 Placebo Female 31 1 40 Treated Female 32 0 38 Placebo Female 32 0 6 Treated Female 37 1 35 Placebo Female 33 2 7 Treated Female 41 0 51 Placebo Female 37 0 72 Treated Female 41 2 54 Placebo Female 44 0 37 Treated Female 48 0 76 Placebo Female 45 0 82 Treated Female 48 2 16 Placebo Female 46 0 53 Treated Female 55 2 69 Placebo Female 48 0 79 Treated Female 55 2 31 Placebo Female 49 0 26 Treated Female 56 2 20 Placebo Female 51 0 28 Treated Female 57 2 68 Placebo Female 53 0 60 Treated Female 57 2 81 Placebo Female 54 0 22 Treated Female 57 2 4 Placebo Female 54 0 27 Treated Female 58 0 78 Placebo Female 54 2 2 Treated Female 59 2 70 Placebo Female 55 2 59 Treated Female 59 2 49 Placebo Female 57 0 62 Treated Female 60 2 10 Placebo Female 57 1 84 Treated Female 61 2 47 Placebo Female 58 1 64 Treated Female 62 1 44 Placebo Female 59 1 34 Treated Female 62 2 24 Placebo Female 59 2 58 Treated Female 66 2 48 Placebo Female 61 0 13 Treated Female 67 2 19 Placebo Female 63 1 61 Treated Female 68 1 3 Placebo Female 64 0 65 Treated Female 68 2 67 Placebo Female 65 2 11 Treated Female 69 0 32 Placebo Female 66 0 56 Treated Female 69 1 42 Placebo Female 66 0 43 Treated Female 70 1 15 Placebo Female 66 1 71 Placebo Female 68 1 1 Placebo Female 74 2 ; proc print data = arthrit(obs=50); proc reg; model better = age; plot better * age = sex p. * age = '@' / overlay; title2 'Ordinary linear regression'; proc logistic nosimple; format better outcome.; model better = age ; output out=results p=predict; title2 'Predicting Improved vs. Not Improved from Age'; run; proc plot; plot better * age = sex predict * age = '@' / overlay; proc logistic nosimple; format better outcome.; model better = age _sex_ _treat_ ; title2 'Adding Sex and Treatment'; proc logistic nosimple data=arthrit; format better outcome.; model better = _sex_ _treat_ age agesex agetrt sextrt age2 / selection=forward slentry=1 /* force all to enter */ start=3 ; /* Start after all main effects */ title2 'Testing all interactions via forward selection'; run; proc logistic nosimple data=arthrit; format better outcome.; model better = _sex_ _treat_ age / influence; title2 'Influence diagnostics'; run; *-- proportional odds model; proc logistic nosimple; model improve = _sex_ _treat_ age ; title 'Proportional Odds Model for IMPROVE: None/Some/Marked'; run;