bag_tree() with the "rpart" engine no
longer accepts case weights. Fit the model without case weights instead
(#390).
bag_tree() with the "rpart" engine now
passes tree_depth, min_n, and
cost_complexity on to the trees, so default fits now use
the bag_tree() defaults of cost_complexity = 0
and min_n = 2. To restore the previous fits, set
cost_complexity = 0.01 and min_n = 20
(#406).
boost_tree() with the "mboost" engine
no longer accepts case weights because mboost doesn’t predict from a
weighted fit. Fit the model without case weights instead
(#363).
boost_tree() with the "mboost" engine
no longer allows setting nu via set_engine().
Use learn_rate instead (#395).
boost_tree() with the "mboost" engine
now warns and ignores control and
tree_controls when set via set_engine().
Previously they silently overrode the main arguments, such as
trees and tree_depth. Use the main arguments
of boost_tree() instead (#414).
survival_prob_*() functions now error when given the
defunct time argument. Use eval_time instead
(#419).
survival_prob_coxph() no longer has the defunct
x argument. Use object instead
(#419).
boost_tree() with the "mboost" engine
now passes learn_rate on to
mboost::boost_control(nu), making it tunable. Previously it
was silently ignored (#395).
multi_predict() is now available for
boost_tree() with the "mboost" engine over the
trees submodel parameter (#290).
null_model() gains a "survival" engine
for censored regression, fitting a Kaplan-Meier curve via
survival::survfit() (#353).
rand_forest() gains a "randomForestSRC"
engine for censored regression, fitting a survival random forest via
randomForestSRC::rfsrc() (#130).
rand_forest() gains a "ranger" engine
for censored regression, fitting a survival random forest via
ranger::ranger() (#131).
bag_tree() with the "rpart" engine now
passes tree_depth, min_n, and
cost_complexity, as well as other
rpart::rpart.control() arguments set via
set_engine(), on to the trees. Previously they were
silently ignored (#406).
decision_tree() with the "rpart" engine
now correctly returns the median survival time of the leaf’s
Kaplan-Meier curve for type = "time" predictions, instead
of rpart’s relative event rate (#331).
proportional_hazards() with the
"glmnet" engine now predicts on data with factors when
fitted through fit_xy() (#365).
proportional_hazards() with the
"survival" engine now predicts when a single
strata() term contains more than one variable,
e.g. strata(s1, s2) (#404).
survival_prob_*() and hazard_*() now
validate their inputs and return more informative error messages when
given an unusable object, new_data, or
eval_time (#271).
survival_reg() with the "survival"
engine and strata() terms now returns NA
survival and hazard predictions for new data rows with a missing value
in a stratification variable, instead of silently using another
stratum’s scale (#383).
Engine-specific tuning parameters are now registered by censored instead of parsnip (#417).
eval_time = Inf are now not always set to 0 and confidence
intervals at infinite evaluation times are now not always set to
NA. This applies to proportional_hazards()and
bag_tree() models as well as models with the
partykit engine, decision_tree() and
rand_forest() (#320).predict() methods for flexsurv
models, in preparation for the upcoming flexsurv release (#317).multi_predict() is now available for all prediction
types for proportional_hazards() models with the
"glmnet" engine, so newly also for
type = "time" and type = "raw" (#277,
#282).
Random forests with the "aorsf" engine can now
predict survival time, i.e., predict(type = "time") is now
available (#308).
survival_prob_*(), survival_time_*(),
and hazard_*() helper functions now all take a parsnip
model_fit object as the main input, instead of an engine
fit as was the case for some of them previously (#302).extract_fit_engine() now works properly for
proportional hazards models fitted with the "glmnet" engine
(#266).
multi_predict(type = "survival") for
proportional_hazards(engine = "glmnet") models: when used
with a single penalty value, this value is now included in
the results. It was previously omitted (#267, #282).
proportional_hazards(engine = "glmnet") models now
don’t pretend to be able to deal with sparse matrices when they are not
(#291).
Fixed a bug for
proportional_hazards(engine = "glmnet") where prediction
didn’t work for a workflow() with a formula as the
preprocessor (#264).
survival_time_coxnet() and
survival_prob_coxnet() gain a multi argument
to allow multiple values for penalty (#278, #279).The new eval_time argument replaces the
time argument for the time points at which to predict
survival probability and hazard. The time argument has been
deprecated (#244).
The matrix interface for fitting, fit_xy(), now
works for censored regression models (#225, #234, #247, #251).
Improved error messages throughout the package (#248).
Added the new "aorsf" engine for
rand_forest() for accelerated oblique random survival
forests with the aorsf package (@bcjaeger, #211).
Added the new flexsurvspline engine for
survival_reg() (@mattwarkentin, #213).
Predictions of type "linear_pred" for
survival_reg(engine = "flexsurv") are now on the correct
scale for distributions where the natural scale and the unrestricted
scale of the location parameter are identical,
e.g. dist = "lnorm" (#229).
Predictions of type "linear_pred" for
proportional_hazards(engine = "glmnet") via
multi_predict() now have the same sign as those via
predict() (#242).
Predictions of survival probability for
survival_reg(engine = "flexsurv") for a single time point
are now nested correctly (#254).
Predictions of survival probability for
decision_tree(engine = "rpart") for a single observation
now work (#256).
Predictions of type "quantile" for
survival_reg(engine = "survival") for a single observation
now work (#257).
Fixed a bug for printing coxnet models, i.e.,
proportional_hazards() models fitted with the
"glmnet" engine (#249).
Predictions of survival probabilities are now calculated via
summary.survfit() for proportional_hazards()
models with the "survival" and "glmnet"
engines, bag_tree() models with the "rpart"
engine, decision_tree() models with the
"partykit" engines, as well as rand_forest()
models with the "partykit" engine (#221, #224).
Added internal survfit_summary_*() helper functions
(#216).
For boosted trees with the "mboost" engine, survival
probabilities can now be predicted for time = -Inf. This is
always 1. For time = Inf this now predicts a survival
probability of 0 (#215).
Updated tests on model arguments and update()
methods (#208).
Internal re-organisation of code (#206, 209).
Added a NEWS.md file to track changes to the
package.