On maximum likelihood estimation of the semi-parametric Cox model with time-varying covariates

Mark Thackham*, Jun Ma

*Corresponding author for this work

    Research output: Contribution to journalArticlepeer-review

    4 Citations (Scopus)


    Including time-varying covariates is a popular extension to the Cox model and a suitable approach for dealing with non-proportional hazards. However, partial likelihood (PL) estimation of this model has three shortcomings: (i) estimated regression coefficients can be less accurate in small samples with heavy censoring; (ii) the baseline hazard is not directly estimated and (iii) a covariance matrix for both the regression coefficients and the baseline hazard is not easily produced.

    We address these by developing a maximum likelihood (ML) approach to jointly estimate regression coefficients and baseline hazard using a constrained optimisation ensuring the latter's non-negativity. We demonstrate asymptotic properties of these estimates and show via simulation their increased accuracy compared to PL estimates in small samples and show our method produces smoother baseline hazard estimates than the Breslow estimator.

    Finally, we apply our method to two examples, including an important real-world financial example to estimate time to default for retail home loans. We demonstrate using our ML estimate for the baseline hazard can give much clearer corroboratory evidence of the 'humped hazard', whereby the risk of loan default rises to a peak and then later falls.

    Original languageEnglish
    Pages (from-to)1511-1528
    Number of pages18
    JournalJournal of Applied Statistics
    Issue number9
    Early online date31 Oct 2019
    Publication statusPublished - 3 Jul 2020


    • Cox model
    • time-varying covariates
    • maximum likelihood
    • constrained optimisation


    Dive into the research topics of 'On maximum likelihood estimation of the semi-parametric Cox model with time-varying covariates'. Together they form a unique fingerprint.

    Cite this