The dot-separated function names of survrec 1.x were renamed to
snake_case: psh_fit(), wc_fit(), mlefrailty_fit(),
surv_search() and q_search(). The old names (psh.fit(),
wc.fit(), mlefrailty.fit(), surv.search(), q.search()) still
work but emit a deprecation warning and will be removed in a future
release. S3 methods (plot.survfitr(), ...) and the argument names
shared with the survival ecosystem (conf.int, boot.F, ...) are
unchanged.
The computational core has been rewritten from Fortran 77 to modern C++
(via Rcpp). The public R API (Survr(), survfitr(), psh_fit(),
wc_fit(), mlefrailty_fit(), survdiffr(), q_search(),
surv_search() and the S3 methods) is unchanged.
survdiffr()) now uses R's random number generator, so
results are reproducible with set.seed(). The previous implementation
used the non-standard GNU rand() generator, which R could not seed. The
seed argument now defaults to NULL (use the current RNG state) and is
honoured when supplied; in 1.2-5 it was silently ignored.survdiffr()
(boot.F = "semiparametric") is now available; it existed in the Fortran
code but was disabled in the R layer.mlefrailty_fit() now returns the posterior frailty estimates
($frailties), previously computed internally and discarded.ZXGSP (golden-section search) and the
copied Netlib Brent/D1MACH code have been replaced by a clean
implementation of Brent's minimization algorithm.summary() on a fit without strata no longer fails with "$ operator is
invalid for atomic vectors".wc_fit() no longer reads an undefined loop variable when counting
events of subjects whose only gap time is censored (undefined behaviour
in the Fortran wc2 routine).mlefrailty_fit() now honours the requested
convergence tolerance tol. In 1.2-5 the inner alpha search overwrote it
with 1e-4 after the first iteration and computed part of the convergence
criterion in single precision, so estimates may differ slightly (they are
now more accurate).mlefrailty_fit() is now really executed when
the EM does not converge (a status-flag bug made it dead code).survdiffr() no longer fails when boot.G or seed are supplied
together with a grouping formula (they leaked into the model frame).q_search() returns NA with a warning (instead of failing) when the
survival estimates are unavailable.wc_fit() now reports m as the number of recurrences per subject,
consistently with psh_fit(); it previously counted the censored record
as well.plot, summary and q_search internals accessed $surv
relying on partial matching; they now use the actual component name.ggplot2 graphics sharing the visual style of the companion
package gcmrec: autoplot() methods for survival fits (with
fun = "surv"/"event"/"cumhaz" and pointwise log-log confidence
bands), plotEstimators() to overlay the three estimators on the same
data, autoplot() for mcf and grouped survdiffr results, and the
exported theme_survrec(). The base-graphics plot()/lines()
methods are kept for backwards compatibility.mcf(): Nelson-Aalen type estimate of the mean cumulative function
(expected number of events by calendar time), optionally by group.quantile() and as.data.frame() methods for survfitr objects.survdiffr() results now have class survdiffr with a
summary() method that reports percentile bootstrap intervals per
group and pairwise differences of quantiles with bootstrap p-values
(the per-group elements keep class boot, so boot::boot.ci() keeps
working).Survr() now checks that every subject has exactly one censored time
(the old check could be fooled by compensating subjects).
The bootstrap re-estimation of survdiffr() runs in parallel with
OpenMP when available. The number of threads is controlled with the new
survrecThreads() function (default: let OpenMP decide, honouring
OMP_NUM_THREADS). Resampling stays serial on R's RNG, so results are
identical for any number of threads.
plot.survfitr() no longer draws meaningless confidence bands when the
fit provides no standard errors or conf.int = FALSE is given.DESCRIPTION uses Authors@R;
documentation migrated from hand-written latin1 .Rd files to roxygen2
(UTF-8), with the NAMESPACE generated by roxygen2.colSums(), rowsum(), findInterval() replace
explicit loops and outer()/apply() constructions).tools/build-reference-fits.R).Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.