- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
I am conducting an analysis to evaluate the relationship between several binary outcomes (death, blood transfusion, 30-day readmission) and a continuous predictor (number of surgeries done at a hospital). I would also like to adjust my model for covariates (age, sex, cardiac anomaly). My objective is to visually examine whether there exists an inflection point, indicating a number of surgeries, where the probability of the outcome changes.
There is a paper by Ravi et al. (https://www.bmj.com/content/348/bmj.g3284) that conducted an analysis similar to what I'm hoping to do, using restricted cubic spline plots.
My current approach was to use PROC LOGISTIC with the EFFECTS function for restricted cubic splines, and then plot the predicted probabilities, but I am having trouble with graphing the output though and could use some help. I also appreciate any feedback on my approach/coding in general.
So far, this is what I am using:
proc logistic data = have outdesignonly; effect spl = spline (surgeries / details naturalcubic basis= tpf(noint) knotmethod= percentiles(3)); class sex (ref=0) cardiac_anomaly (ref=0)/ param=ref; model blood_transfusion = surgeries age sex cardiac_anomaly; output out= splineout predicted= fit; run; title "Restricted Cubic Spline Regression for Blood Transfusion"; proc sgplot data= splineout noautolegend; scatter x= surgeries y=fit/ lineattrs= (thickness =3 color=red); run;
I have chosen 3 knots because my sample is relatively small (n ~500).
Eventually, I would like to be able to plot an overlay plot for the various outcomes, but I am also unclear on how this could be achieved.
Thank you in advance for any suggestions!
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
You could try EFFECTPLOT statement of PROC LOGISTIC or PROC PLM.
https://blogs.sas.com/content/iml/2016/03/21/statistical-analysis-stephen-curry-shooting.html
proc logistic data=curry;
where Shot_Distance <= 30;
effect spl = spline(X Y / degree=2);
model Shot_Made(event='Made') = spl / SCALE=NONE AGGREGATE;
effectplot contour / showCLegend;
run;
https://blogs.sas.com/content/iml/2016/06/22/sas-effectplot-statement.html
https://blogs.sas.com/content/iml/2019/02/11/proc-plm-regression-models-sas.html
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Thank you for your response.
It seems I'm able to plot the predicted probabilities of my model using Proc PLM and EFFECTPLOT. The code I am using is:
proc logistic data = have; effect spl= spline(surgeries/ details naturalcubic basis=tpf(noint) knotmethod=percentiles(4)); class sex cardiac_anomaly/ param =ref; model blood_transfusion (event ='1') = surgeries age sex cardiac_anomaly spl; store Model; run; proc plm source = Model; effectplot fit (x=surgeries)/ at (sex ='0' cardiac_anomaly ='0'); run;
I would appreciate any feedback on my model; the way I understand it, is that the cubic spline regression predictions are plotted, showing trends within my data. I am unable to share my plots unfortunately, but they do ressemble those in: https://blogs.sas.com/content/iml/2016/06/22/sas-effectplot-statement.html
Thank you!