The longevity
package proposes estimation routines for modeling excess lifetime. Core functionalities include maximum likelihood estimation for parametric models (exponential, Gompertz, Weibull, generalized Pareto, extended generalized Pareto, piecewise generalized Pareto), threshold selection plots for survival data, nonparametric maximum likelihood estimation, profile likelihood estimation for the endpoint of the distribution of exceedances.
Installation
You can install the development version of longevity from GitHub with:
# install.packages("devtools")
devtools::install_github("lbelzile/longevity")
Current features
 maximum likelihood estimation routines
 simulation of lefttruncated and righttruncated/rightcensored data
 hazard plots with profilelikelihood based confidence intervals
 threshold selection diagnostics with profile and Wald pointwise confidence intervals
 quantilequantile plots
 likelihood ratio tests for nested models
 likelihood ratio tests for a categorical explanatory
 score and likelihood ratio tests for piecewise generalized Pareto distribution, extending Northrop and Coleman (2014), with pvalue paths
 nonparametric maximum likelihood estimate of the distribution function with arbitrary truncation and censoring using the EM algorithm of Turnbull (1976)  C++ implementation.
 profile likelihood for generalized Pareto (endpoint)

Adapt
npsurv
for interval censoring  S3 methods

hazard functions for all parametric models, using
helife
Improvements
 Add logistictype models, including distributions, optimization routines, tests

Add empirical distribution function for
npelife
andnpsurv

Fix
npsurv
and add weighting argument to Cpp routine.  Remove KolmogorovSmirnov test (depending on whether it makes sense given null distribution)
 Change procedure for QQ plots and other graphical diagnostics
Testing

Check
np_elife
for the case of rightcensoring
 lefttruncation (BellLynden estimator)
 lefttruncation and rightcensoring (Tsai, Jewell and Wang)
 Frydman (1994) correction for interval censored truncated data
 double truncation
 Check functions fail when packages listed in ‘Suggests’ are absent
 Check all distributions and proper nesting relationships
 Check that all ANOVA nesting works as expected (with null distribution)
 Check distributions

Fix starting values for
gomp
andgompmake
and make sure model is as good as submodel  Verify fitting procedure in multiple instances, including interval censoring, left and right truncation, etc.

Check all plots type are produced with both base R and
ggplot2
, and ellipsis works as expected