Programming the statistical procedures from SAS

PROC PHREG Model Fit with Gronnesby and Borgan

Reply
Learner
Posts: 1

PROC PHREG Model Fit with Gronnesby and Borgan

I have been experiencing issues with model fit. In my example, I have set up a time-varying (counting method) survival analysis model (cox regression with SAS: proc phreg). My outcome is an adverse pregnancy outcome and my main predictor of interest (3-level categorical) is a time-varying exposure that occurs during pregnancy. I am controlling for an additional time-varying covariate and several demographic covariates. The data are left-truncated at start of pregnancy care.

 

I used the Gronnesby and Borgan test to assess model adequacy with the results showing poor fit. I have tried adjusting the number of risk groups in the test and modifying some of the variables (categorizing age groups, condensing categorical variables, etc) with no success. Reducing the model has varying results (depending on what permutation of variables remains), not indicating a specific problematic variable. Some of my similar models testing for different outcomes using the same dataset, predictors and covariates have had adequate fit. Other diagnostics in the model, such as multicollinearity and confounding are not problematic.

 

I'm posting this here in hopes that someone else has dealt with similar issues and may have suggestions on how to move forward from here. Are there other approaches I should consider for improving the model fit? Is there a better way to assess model fit? What implications does the poor model fit have on the interpretation of the results?

 

Thank you in advance for the help.

 

Literature on the Gronnesby and Borgan test - http://www.lexjansen.com/phuse/2010/sp/SP05.pdf

http://www.ncbi.nlm.nih.gov/pubmed/9384628

 

code setup for fit:

 

proc phreg data=model_data;

class exp (ref='1') var1 (ref='1') var2 (ref='1') var3 (ref='1') var4 (ref='1')/param=reference;

model (start,stop)*outcome(0)= exp var1 var2 var3 var4 /RL ties=efron;

output out=model_fit xbeta=risk;

run;

 

proc rank data=model_fit groups=10 out=modelriskgroups;

var risk;

run;

 

proc phreg data=modelriskgroups;

class exp (ref='1') var1 (ref='1') var2 (ref='1') var3 (ref='1') var4 (ref='1')/param=reference;

model (start,stop)*outcome(0)= exp var1 var2 var3 var4 risk/RL ties=efron;

run;

Ask a Question
Discussion stats
  • 0 replies
  • 258 views
  • 0 likes
  • 1 in conversation