Summary
Tracking issue for hazard-estimate functionality across the package. Two existing issues touch overlapping ground:
Both are about exposing $h(t)$ to users, but from different inputs (KM/NA estimates in #4, forest predictions in #5). Worth solving together so the API and visualization are consistent.
Scope
Non-goals
- Competing-risks hazards — separate issue if/when needed.
- Time-dependent covariates.
Open questions
- Smoothing default: kernel bandwidth choice vs. requiring user to pass it?
- Do we want CIs on hazard, or just on cumulative hazard?
Closes #4, #5 when complete.
Summary
Tracking issue for hazard-estimate functionality across the package. Two existing issues touch overlapping ground:
gg_survivalfinite-difference hazard from cumulative hazard returns incorrect values (labeled bug + enhancement)gg_rfsrchas no path to a hazard estimate fromrfsrcobjectsBoth are about exposing$h(t)$ to users, but from different inputs (KM/NA estimates in #4, forest predictions in #5). Worth solving together so the API and visualization are consistent.
Scope
gg_survival(calculate hazard estimates (gg_survival) #4). Fix the finite-difference computation, or replace with a smoothed estimator (e.g.muhaz, kernel ongg_rfsrc(hazard estimates (gg_rfsrc) #5). Derive hazard fromrfsrc\$chf(cumulative hazard function) using the same discretization rule asgg_survival. Likely atype = \"hazard\"argument on the existingplot()method.plot(gg_*, type = \"hazard\")with sensible y-axis defaults and CI bands where available.Non-goals
Open questions
Closes #4, #5 when complete.