I run an ordinal regression model and I wanted to check the proportional odds assumption. In order to do that I used the VGAM package and I run olr twice, the first under the assumption and the second without the assumption. Below is the code and the results
> fit1 <- vglm(stage ~Ki67+Cyclin_E,family=cumulative(parallel=T))
> summary(fit1)
Call:
vglm(formula = stage ~ Ki67 + Cyclin_E, family = cumulative(parallel = T))
Pearson Residuals:
Min 1Q Median 3Q Max
logit(P[Y< = 1]) -3.1177 -0.43593 0.37246 0.53111 1.4927
logit(P[Y< = 2]) -3.8479 0.14119 0.18785 0.28679 1.9903
Coefficients:
Estimate Std. Error z value
(Intercept):1 2.2414705 1.091225 2.05409
(Intercept):2 3.2164214 1.178916 2.72829
Ki67 -0.1157273 0.039889 -2.90124
Cyclin_E 0.0085266 0.028626 0.29786
Number of linear predictors: 2
Names of linear predictors: logit(P[Y< = 1]), logit(P[Y< = 2])
Dispersion Parameter for cumulative family: 1
Residual deviance: 50.82946 on 62 degrees of freedom
Log-likelihood: -25.41473 on 62 degrees of freedom
Number of iterations: 5
> fit2 <- vglm(grade ~Ki67+Cyclin_E,family=cumulative(parallel=F),maxit=50)
> summary(fit2)
Call:
vglm(formula = grade ~ Ki67 + Cyclin_E, family = cumulative(parallel = F),
maxit = 50)
Pearson Residuals:
Min 1Q Median 3Q Max
logit(P[Y< = 1]) -1.1870 -0.65271 -0.23199 0.44910 3.4798
logit(P[Y< = 2]) -2.6235 -0.70599 0.27305 0.72691 2.8544
Coefficients:
Estimate Std. Error z value
(Intercept):1 -0.059702 0.928078 -0.064328
(Intercept):2 2.687277 1.050909 2.557097
Ki67:1 -0.100832 0.047754 -2.111483
Ki67:2 -0.101817 0.036567 -2.784377
Cyclin_E:1 0.018768 0.022708 0.826474
Cyclin_E:2 -0.015416 0.022927 -0.672390
Number of linear predictors: 2
Names of linear predictors: logit(P[Y< = 1]), logit(P[Y< = 2])
Dispersion Parameter for cumulative family: 1
Residual deviance: 78.93318 on 78 degrees of freedom
Log-likelihood: -39.46659 on 78 degrees of freedom
Number of iterations: 34
In order to check if the difference of the two models is significant I run the next command
pchisq(deviance(fit2)-deviance(fit1),df=df.residual(fit2)-df.residual(fit1),lower.tail=FALSE)
[1] 0.03072927
As you see the result is that the 2 models differ and so the proportional odds assumption isn't true. But if you see the coefficients about the Ki67 (Cyclin is not significantly important so i guess i can skip it) they are almost the same. In that case what should I do? I believe that I could stick with the model under the po assumption but I'd like to know what others think