Match a job Paths Subjects Questions Quizzes Pricing
Advanced Open Free

Interpret a Cox Table, Then Find Its Leakage and Its Proportional-Hazards Failure

A data scientist fits a Cox model for subscription churn (time in months, event is cancellation) and presents the table below to the pricing team.

covariate HR 95% CI p
annual_plan (1 = yes) 0.45 0.38 to 0.53 \lt 0.001
sessions_first_30d (per 10 sessions) 0.70 0.65 to 0.76 \lt 0.001
integration_enabled (1 = yes) 0.60 0.52 to 0.69 \lt 0.001
mobile_only (1 = yes) 0.95 0.85 to 1.06 0.35

A Schoenfeld-residual test reports p=0.003 for annual_plan and p\gt0.4 for the others. The baseline survival at 12 months (all covariates at zero) is S_0(12)=0.60.

  1. Explain what HR 0.45 for annual_plan means, and what it does NOT mean. A manager says "annual plans cut churn by 55 percent": give the correct 12-month churn for a user on an annual plan, with the other covariates at 0, and the relative churn reduction.
  2. Interpret sessions_first_30d, and point out why this covariate is a problem for the claim "increase early engagement and churn drops 30 percent per 10 sessions".
  3. What does the Schoenfeld result mean for the annual-plan row? List three ways to deal with it and what you would report to the pricing team meanwhile.
  4. mobile_only has HR 0.95, p=0.35. State what you can and cannot conclude.
Solution

1. HR 0.45. In the model, at any tenure, among users still subscribed, the cancellation hazard (instantaneous rate) of an annual plan user is 0.45 times that of an otherwise identical monthly user. It is a ratio of rates, not of probabilities of churn by month 12, and not "55 percent fewer churners". With S(t\mid x)=S_0(t)^{\text{HR}}, S(12)=0.60^{0.45}=0.795 (verified), so 12-month churn falls from 40.0 to 20.5 percent: a relative cut of 49 percent, and 19.5 percentage points absolute, not 55 percent. The hazard ratio is only meaningful "holding the other covariates fixed" and as an average if the ratio changes over time (see part 3). For comparison, HR 0.70 (the sessions row for +10 sessions) on the same baseline gives S=0.699 and churn 30.1 percent (relative cut 25 percent, not 30); HR 0.60 gives 0.736 (26.4 percent churn); HR 0.95 gives 0.616 (38.4 percent) (all verified).

2. Sessions in the first 30 days. Per 10 additional sessions the hazard is 30 percent lower, an association, with three problems. (a) Immortal time / leakage: the covariate is only fully known at day 30, so a user who cancelled on day 10 cannot have 30 days of sessions. Users with more accumulated sessions had to survive longer to accumulate them. Used as a baseline covariate from time zero, the model credits them with survival that they "earned" before the covariate existed, exactly the mechanism that turned a null effect into a hazard ratio of 0.24 in the lesson's simulation (verified). Fix: define the index date at day 30 and analyse only users still active then (a landmark analysis), or use sessions-to-date as a time-varying covariate. (b) Causality: engaged users are different people; nudging sessions need not change churn (confounding, causal-inference-basics). (c) Scale: HR per 10 sessions needs a linearity check (splines), and predicting a new user's survival at sign-up is impossible with a day-30 feature.

3. The Schoenfeld failure. The scaled residuals for annual_plan correlate with time, so the 0.45 is an average of a ratio that changes with tenure (for instance, annual users cannot churn before the renewal date, so the early ratio is near 0 and the late ratio, after the first renewal, is closer to or above 1). In the lesson's broken-hazard simulation a single hazard ratio of 1.19 hid effects of 0.48 and 2.0 and the Schoenfeld test gave \chi^2=339 (verified). Options: (i) stratify by plan (separate baselines, loses the plan hazard ratio); (ii) model time dependence: interact annual_plan with a function of time, or split follow-up into episodes at the renewal date and fit one hazard ratio per episode; (iii) use an AFT or discrete-time model with month indicators and interactions, or compare restricted mean survival time. Meanwhile tell the pricing team "annual plans have a lower churn hazard on average, but the effect changes with tenure; here are the curves by plan and the 12-month and 24-month survival gaps". Also check the plot of \ln(-\ln\hat S) by plan.

4. mobile_only. The interval 0.85 to 1.06 contains 1, so the data do not distinguish mobile-only users from others and cannot exclude a 6 percent increase in hazard or a 15 percent reduction. It is not proof of "no effect"; it says the effect, if any, is small relative to the precision of this sample. Since the other tests pass, the covariate can be left in, dropped for parsimony, or flagged for more data; do not report it as "mobile does not matter".

Share this question

← Back to Survival Analysis & Time-to-Event Modeling practice

We use cookies for product analytics to improve OmniAtlas. See our Privacy Policy.