splice

survival.splice(early, late, cutpoint)

Extrapolation: follow one curve to a cutpoint, then another’s shape.

Up to cutpoint, the result is early’s survival exactly. Beyond it, the result rescales late’s survival function to stay continuous at the cutpoint, early.survival(cutpoint) * late.survival(t) / late.survival(cutpoint), so the tail follows late’s hazard shape from that point on. This is the standard construction for a long-term model built on an observed curve that only covers a follow-up window: early is fit to the trial data, late is a parametric or external curve chosen for the extrapolation.

Parameters

Name Type Description Default
early SurvivalCurve Curve followed up to cutpoint. required
late SurvivalCurve Curve whose shape drives the extrapolation beyond cutpoint. required
cutpoint float Time (years) at which the curve switches. Must be positive. required

Returns

Name Type Description
SurvivalCurve A new SurvivalCurve that is continuous at cutpoint.

Example

from heormodel.survival import exponential, splice curve = splice(exponential(rate=0.1), exponential(rate=0.3), cutpoint=5.0) round(float(curve.survival(5.0)), 5) 0.60653

Back to top