Your example shows that Treatment A has better survival until about Time = 3500
, when Treatment B starts to become superior. In this case there is no single answer to which Treatment is superior: it depends on the time at which you evaluate outcomes.
A simple accelerated failure time (AFT) model, suggested in another answer, wouldn't help here. A standard AFT model assumes that a change in a covariate (here, treatment) leads to a compression or dilation of the time scale. Under such an AFT model these survival curves thus also wouldn't cross.
You need to decide what aspect of the survival curve is most important to you. Example 7.2 of Klein and Moeschberger, 2nd edition covers an example like this, and shows how modifications of the log-rank test can be used to differentially weight early versus late events.
A standard Cox model would return a type of event-weighted average log-hazard, probably weighted toward early events when there is censoring. The methods in the R coxphw
package might provide a less-biased estimate of the overall hazard ratio, if that is of interest.
A parametric model that goes beyond a simple AFT setup could be used. A standard form for an AFT model is:
$$\log T = \beta' X + \sigma W $$
where $T$ is event time, $X$ is the set of covariates with associated coefficients $\beta$, $W$ is a defined probability distribution (e.g., standard normal for a log-normal model), and $\sigma$ is a fixed scale factor. You can allow $\sigma$ also to be a function of the covariates, for example via the tools in the R flexsurv
package, which could model the crossing curves. But then it's no longer an AFT model, just a parametric description of the results, and that doesn't address the fundamental question of which survival times are most important.