Plot method for an object of class 'probtrans'. It plots the transition
probabilities as estimated by probtrans
.
# S3 method for probtrans plot( x, from = 1, type = c("filled", "single", "separate", "stacked"), ord, cols, xlab = "Time", ylab = "Probability", xlim, ylim, lwd, lty, cex, legend, legend.pos = "right", bty = "n", xaxs = "i", yaxs = "i", use.ggplot = FALSE, conf.int = 0.95, conf.type = c("log", "plain", "none"), label, ... )
x | Object of class 'probtrans', containing estimated transition probabilities |
---|---|
from | The starting state from which the probabilities are used to plot |
type | One of |
ord | A vector of length equal to the number of states, specifying the
order of plotting in case type= |
cols | A vector specifying colors for the different transitions;
default is a palette from green to red, when type= |
xlab | A title for the x-axis; default is |
ylab | A title for the y-axis; default is |
xlim | The x limits of the plot(s), default is range of time |
ylim | The y limits of the plot(s); if ylim is specified for type="separate", then all plots use the same ylim for y limits |
lwd | The line width, see |
lty | The line type, see |
cex | Character size, used in text; only used when
type= |
legend | Character vector of length equal to the number of transitions, to be used in a legend; if missing, numbers will be used; this and the legend arguments following are ignored when type="separate" |
legend.pos | The position of the legend, see |
bty | The box type of the legend, see |
xaxs | See |
yaxs | See |
use.ggplot | Default FALSE, set TRUE for ggplot version of plot |
conf.int | Confidence level (%) from 0-1 for probabilities, default is 0.95 (95% CI). Setting to 0 removes the CIs. |
conf.type | Type of confidence interval - either "log" or "plain" . See function details for details. |
label | Only relevant for type = "filled" or "stacked", set to "annotate" to have state labels on plot, or leave unspecified. |
... | Further arguments to plot |
No return value
Regarding confidence intervals: let \(p\) denote a predicted probability, \(\sigma\) its estimated standard error, and \(z_{\alpha/2}\) denote the critical value of the standard normal distribution at confidence level \(1 - \alpha\).
The confidence interval of type "plain" is then $$p \pm z_{\alpha/2} * \sigma$$
The confidence interval of type "log", based on the Delta method, is then $$\exp(\log(p) \pm z_{\alpha/2} * \sigma / p)$$
Hein Putter H.Putter@lumc.nl
Edouard F. Bonneville e.f.bonneville@lumc.nl
# transition matrix for illness-death model tmat <- trans.illdeath() # data in wide format, for transition 1 this is dataset E1 of # Therneau and Grambsch (2000) tg <- data.frame(illt=c(1,1,6,6,8,9),ills=c(1,0,1,1,0,1), dt=c(5,1,9,7,8,12),ds=c(1,1,1,1,1,1), x1=c(1,1,1,0,0,0),x2=c(6:1)) # data in long format using msprep tglong <- msprep(time=c(NA,"illt","dt"),status=c(NA,"ills","ds"), data=tg,keep=c("x1","x2"),trans=tmat) # events events(tglong)#> $Frequencies #> to #> from healthy illness death no event total entering #> healthy 0 4 2 0 6 #> illness 0 0 4 0 4 #> death 0 0 0 6 6 #> #> $Proportions #> to #> from healthy illness death no event #> healthy 0.0000000 0.6666667 0.3333333 0.0000000 #> illness 0.0000000 0.0000000 1.0000000 0.0000000 #> death 0.0000000 0.0000000 0.0000000 1.0000000 #>#> , , = 1 #> #> #> 2 3 #> 0 2 4 #> 1 4 2 #> #> , , = 2 #> #> #> 2 3 #> 0 0 0 #> 1 0 4 #># expanded covariates tglong <- expand.covs(tglong,c("x1","x2")) # Cox model with different covariate cx <- coxph(Surv(Tstart,Tstop,status)~x1.1+x2.2+strata(trans), data=tglong,method="breslow") summary(cx)#> Call: #> coxph(formula = Surv(Tstart, Tstop, status) ~ x1.1 + x2.2 + strata(trans), #> data = tglong, method = "breslow") #> #> n= 16, number of events= 10 #> #> coef exp(coef) se(coef) z Pr(>|z|) #> x1.1 1.4753 4.3723 1.2557 1.175 0.240 #> x2.2 0.8571 2.3563 0.8848 0.969 0.333 #> #> exp(coef) exp(-coef) lower .95 upper .95 #> x1.1 4.372 0.2287 0.3731 51.24 #> x2.2 2.356 0.4244 0.4160 13.35 #> #> Concordance= 0.781 (se = 0.077 ) #> Likelihood ratio test= 2.93 on 2 df, p=0.2 #> Wald test = 2.32 on 2 df, p=0.3 #> Score (logrank) test = 2.86 on 2 df, p=0.2 #># new data, to check whether results are the same for transition 1 as # those in appendix E.1 of Therneau and Grambsch (2000) newdata <- data.frame(trans=1:3,x1.1=c(0,0,0),x2.2=c(0,1,0),strata=1:3) msf <- msfit(cx,newdata,trans=tmat) # probtrans pt <- probtrans(msf,predt=0) # default plot plot(pt,ord=c(2,3,1),lwd=2,cex=0.75)# ggplot version - see vignette for details library(ggplot2) plot(pt, ord=c(2,3,1), use.ggplot = TRUE)