ci.cum {Epi} | R Documentation |
Computes the cumulative sum of parameter functions and the standard error of it. Optionally the exponential is applied to the parameter functions before it is cumulated.
ci.cum( obj, ctr.mat = NULL, subset = NULL, intl = 1, alpha = 0.05, Exp = TRUE )
obj |
A model object. |
ctr.mat |
Contrast matrix defining the parameter functions from the parameters of the model. |
subset |
Subset of the parameters of the model to which
ctr.mat should be applied. |
intl |
Interval length for the cumulation. Either a constant or
a numerical vector of length nrow(ctr.mat) . |
alpha |
Significance level used when computing confidence limits. |
Exp |
Should the parameter function be exponentiated before it is cumulated? |
The purpose of this function is to compute cumulative rate based on a
model for the rates. If the model is a multiplicative model for the
rates, the purpose of ctr.mat
is to return a vector of rates or
log-rates when applied to the coefficients of the model. If log-rates
are returned, the they should be exponentiated before cumulated, and
the variances computed accordingly. Since log-linear models are the most
common the Exp
parameter defaults to TRUE.
A matrix with 4 columns: Estimate, lower and upper c.i. and standard
error. The numebr of rows equals nrow(ctr.mat)
if zero
if
FALSE, otherwise nrow(ctr.mat)+1
, because an initial row of 0s
is added.
Bendix Carstensen, http://www.pubhealth.ku.dk/~bxc
See also ci.lin
# Packages required for this example library( splines ) library( survival ) data( lung ) par( mfrow=c(1,2) ) # Plot the Kaplan-meier-estimator # plot( survfit( Surv( time, status==2 ), data=lung ) ) # Cut the follow-up every 10 days # dx <- Lexis( exit=time, fail=(status==2), breaks=seq(0,1100,10), data=lung ) str( dx ) # Fit a Poisson model with a natural spline for the effect of time. # Note that "Time" is the left endpoint of the interval in the dataframe dx. # MM <- ns( dx$Time, knots=c(50,100,200,400,700), intercept=TRUE ) mp <- glm( Fail ~ MM - 1 + offset(log(Exit-Entry)), family=poisson, data=dx, eps=10^-8, maxit=25 ) # Contrast matrix to extract effects, i.e. matrix to multiply with the # coefficients to produce the log-rates: unique rows of MM, in time order. # T.pt <- sort( unique( dx$Time ) ) T.wh <- match( T.pt, dx$Time ) Lambda <- ci.cum( mp, ctr.mat=MM[T.wh,], intl=diff(c(0,T.pt)) ) # Put the estimated survival function on top of the KM-estimator # matlines( c(0,T.pt[-1]), exp(-Lambda[,1:3]), lwd=c(3,1,1), lty=1, col="Red" ) # Extract and plot the fitted intensity function # lambda <- ci.lin( mp, ctr.mat=MM[T.wh,], Exp=TRUE ) matplot( T.pt, lambda[,5:7]*10^3, type="l", lwd=c(3,1,1), col="black", lty=1, log="y", ylim=c(0.2,20) )