Kaplan-Meier estimator from convoys shows strange behavior compared to Weibull The convoys documentation describes how survival analysis can be used to analyze the time to resolution for complaints filed with the NYC Department of Buildings.
One of the charts compares the Kaplan-Meier estimator to a Weibull model.  Is there a reason why the K-M curve 'goes vertical' for the 2005-2009 and 2015-2019 cohorts, while the Weibull stops at about the cohort disposition rate (k/n)?

 A: The Kaplan-Meier curves for each cohort end at the end of follow-up for that cohort, which looks to be early 2019.  A 2015 complaint can't have more than 3-4 years follow-up, a 2005 complaint can't have more than 13-14 years follow-up.  Anything after that point, and in particular the long-run resolution rate of recent complaints, is extrapolation.  The Kaplan-Meier estimator can't do extrapolation.
So what happens when the Kaplan-Meier estimator runs out of follow-up time? Consider the very last complaint, the one with the longest follow-up. If it was resolved, that's 100% resolution for all complaints being observed at that time point. The estimated non-resolution rate goes to zero.  If the very last complaint is unresolved, the estimated non-resolution rate is whatever it was after the second-last complaint.
As a result, the estimated non-resolution rate sometimes just stops at the end of followup and sometimes shoots down to zero, and this is basically random.  Plot this upside down, so the curves start at zero and go up, and you get the picture.
In a large dataset, the Kaplan-Meier estimator will be a good estimate for as far out as the dataset stays large, but when the dataset becomes small due to censoring, the accuracy falls apart.  (There's a related asymptotic result where the estimator is uniformly consistent over intervals where the probability of being still under followup is bounded away from zero)
