cox.zph {survival}  R Documentation 
Test the Proportional Hazards Assumption of a Cox Regression
Description
Test the proportional hazards assumption for a Cox regression model fit
(coxph
).
Usage
cox.zph(fit, transform="km", terms=TRUE, singledf=FALSE, global=TRUE)
Arguments
fit 
the result of fitting a Cox regression model, using the

transform 
a character string specifying how the survival times should be transformed
before the test is performed.
Possible values are 
terms 
if TRUE, do a test for each term in the model rather than for each separate covariate. For a factor variable with k levels, for instance, this would lead to a k1 degree of freedom test. The plot for such variables will be a single curve evaluating the linear predictor over time. 
singledf 
use a single degree of freedom test for terms that
have multiple coefficients, i.e., the test that corresponds most
closely to the plot. If 
global 
should a global chisquare test be done, in addition to the pervariable or perterm tests tests. 
Details
The computations require the original x
matrix of the Cox model fit.
Thus it saves time if the x=TRUE
option is used in coxph
.
This function would usually be followed by both a plot and a print of
the result.
The plot gives an estimate of the timedependent coefficient
\beta(t)
.
If the proportional hazards assumption holds then the true
\beta(t)
function would be a horizontal line.
The table
component provides the results of a formal score test
for slope=0, a linear fit to the plot would approximate the test.
Random effects terms such a frailty
or random effects in a
coxme
model are not checked for proportional hazards, rather
they are treated as a fixed offset in model.
If the model contains strata by covariate interactions, then the
y
matrix may contain structural zeros, i.e., deaths (rows) that
had no role in estimation of a given coefficient (column).
These are marked as NA.
If an entire row is NA, for instance after subscripting a
cox.zph
object, that row is removed.
Value
an object of class "cox.zph"
, with components:
table 
a matrix with one row for each variable, and optionally a last row for the global test. Columns of the matrix contain a score test of for addition of the timedependent term, the degrees of freedom, and the twosided pvalue. 
x 
the transformed time axis. 
time 
the untransformed time values; there is one entry for each event time in the data 
strata 
for a stratified 
y 
the matrix of scaled Schoenfeld residuals. There will be one column per
term or per variable (depending on the 
var 
a variance matrix for the covariates, used to create an approximate standard error band for plots 
transform 
the transform of time that was used 
call 
the calling sequence for the routine. 
Note
In versions of the package before survival3.0 the function computed a fast approximation to the score test. Later versions compute the actual score test.
References
P. Grambsch and T. Therneau (1994), Proportional hazards tests and diagnostics based on weighted residuals. Biometrika, 81, 51526.
See Also
Examples
fit < coxph(Surv(futime, fustat) ~ age + ecog.ps,
data=ovarian)
temp < cox.zph(fit)
print(temp) # display the results
plot(temp) # plot curves