/*-----------------------------------------------------------------
S A S S A M P L E L I B R A R Y
NAME: ICOMEP3
TITLE: Example 3 for EFFECTPLOT Statement
PRODUCT: STAT
SYSTEM: ALL
KEYS: ODS Graphics, Logistic Regression
PROCS: LOGISTIC
DATA:
SUPPORT: Bob Derr
REF: SAS/STAT User's Guide, Shared Concepts Chapter
MISC:
-----------------------------------------------------------------*/
/* In a study of the analgesic effects of treatments on elderly
patients with neuralgia, two test treatments and a placebo are
compared. The response variable, Pain, is whether the patient
reported pain or not. Researchers record Age and Sex of the
patients and the Duration of complaint before the treatment
began.*/
title 'Example 3: Logistic Regression';
data Neuralgia;
input Treatment $ Sex $ Age Duration Pain $ @@;
datalines;
P F 68 1 No B M 74 16 No P F 67 30 No
P M 66 26 Yes B F 67 28 No B F 77 16 No
A F 71 12 No B F 72 50 No B F 76 9 Yes
A M 71 17 Yes A F 63 27 No A F 69 18 Yes
B F 66 12 No A M 62 42 No P F 64 1 Yes
A F 64 17 No P M 74 4 No A F 72 25 No
P M 70 1 Yes B M 66 19 No B M 59 29 No
A F 64 30 No A M 70 28 No A M 69 1 No
B F 78 1 No P M 83 1 Yes B F 69 42 No
B M 75 30 Yes P M 77 29 Yes P F 79 20 Yes
A M 70 12 No A F 69 12 No B F 65 14 No
B M 70 1 No B M 67 23 No A M 76 25 Yes
P M 78 12 Yes B M 77 1 Yes B F 69 24 No
P M 66 4 Yes P F 65 29 No P M 60 26 Yes
A M 78 15 Yes B M 75 21 Yes A F 67 11 No
P F 72 27 No P F 70 13 Yes A M 75 6 Yes
B F 65 7 No P F 68 27 Yes P M 68 11 Yes
P M 67 17 Yes B M 70 22 No A M 65 15 No
P F 67 1 Yes A M 67 10 No P F 72 11 Yes
A F 74 1 No B M 80 21 Yes A F 69 3 No
;
ods graphics on;
proc logistic data=Neuralgia;
class Treatment Sex / param=ref;
model Pain= Treatment|Sex Age Duration;
effectplot slicefit;
run;
proc logistic data=Neuralgia;
class Treatment Sex / param=ref;
model Pain= Treatment|Sex Age Duration;
effectplot interaction(x=Treatment sliceby=Sex) / noobs link;
run;
proc logistic data=Neuralgia;
class Treatment Sex / param=ref;
model Pain= Treatment Sex Age Duration;
effectplot slicefit(sliceby=Treatment plotby(rows)=Sex)
/ at(Duration=min midrange max) obs(fringe jitter(seed=39393));
store logimodel;
run;
proc plm restore=logimodel;
effectplot contour(plotby=Treatment) / at(Sex=all);
run;
ods graphics off;