*** logistic regression for numerical factors; data beetle; input dose total dead; ratio= dead/total; dose2=dose*dose; datalines; 1.6907 59 6 1.7242 60 13 1.7552 62 18 1.7842 56 28 1.8113 63 52 1.8369 59 53 1.8610 62 61 1.8839 60 60 ; run; proc print data=beetle; run; proc gplot data=beetle; plot ratio*dose; run; ** fit the saturated model (can use any link); proc genmod data=beetle; class dose; model dead/total= dose/ dist=bin link= logit p; run; ** fit the data using three different links; proc genmod data=beetle; model dead/total = dose / dist=bin link=identity; run; proc genmod data=beetle; model dead/total = dose / dist=bin link=logit p r; run; proc genmod data=beetle; model dead/total = dose / dist=bin link=probit p r; run; ** fit the data with no dose; proc genmod data=beetle; model dead/total = / dist=bin link=logit; run; ** options for inference and model diagnosis; proc genmod data=beetle; model dead/total = dose / dist=bin link=logit obstats; output out=diag pred=fitted stdreschi=std_res; run; symbol1 v=dot c=black; symbol2 v=circle c=black; legend1 label=(height=1.5 "Key:") value=(height=1.5); proc gplot data=diag; plot (fitted ratio)*dose/overlay Legend=legend1; run; ** fit quadratic regression; proc genmod data=beetle; model dead/total = dose dose2/ dist=bin link= logit; run;