The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.
| Function | Works |
|---|---|
tidypredict_fit(), tidypredict_sql(),
parse_model() |
✔ |
tidypredict_to_column() |
✔ |
tidypredict_test() |
✔ |
tidypredict_interval(),
tidypredict_sql_interval() |
✗ |
parsnip |
✔ |
Only regression models are supported. Classification
cforest() models rely on a voting mechanism that cannot be
expressed as a single formula.
Here is a simple cforest() model using the
mtcars dataset:
Each tree in the forest is a partykit party tree.
tidypredict turns every tree into a nested
dplyr::case_when() statement using each terminal node’s
in-bag weighted mean, then averages the trees. This matches the default
predict() behavior, which scales the per-tree weights
before aggregating.
tidypredict_fit(model)
#> (case_when(is.na(cyl) ~ NA, cyl <= 6 ~ 22.08, .default = 15.17) +
#> case_when(is.na(wt) ~ NA, wt <= 2.78 ~ 27.5428571428571,
#> .default = 17.1384615384615) + case_when(is.na(wt) ~
#> NA, wt <= 3.15 ~ 23.7625, .default = 16.5083333333333) +
#> case_when(is.na(wt) ~ NA, wt <= 2.78 ~ 26.6285714285714,
#> .default = 16.9076923076923) + case_when(is.na(wt) ~
#> NA, wt <= 2.465 ~ 28.3857142857143, .default = 16.7769230769231))/5LFrom there, the Tidy Eval formula can be used anywhere it can be
evaluated. tidypredict provides three paths:
dplyr,
mutate(mtcars, !!tidypredict_fit(model))tidypredict_to_column(model) to add it to a piped
command settidypredict_sql(model, con) to retrieve the SQL
statementtidypredict also supports cforest model
objects fitted via the parsnip package with the
"partykit" engine, which is provided by the
bonsai package.
library(bonsai)
library(parsnip)
parsnip_model <- rand_forest(mode = "regression", trees = 5) %>%
set_engine("partykit") %>%
fit(mpg ~ wt + cyl, data = mtcars)
tidypredict_fit(parsnip_model)
#> (case_when(is.na(cyl) ~ NA, cyl <= 4 ~ 28.275, .default = 16.1) +
#> case_when(is.na(wt) ~ NA, wt <= 3.215 ~ 25.2555555555556,
#> .default = 16.0272727272727) + case_when(is.na(cyl) ~
#> NA, cyl <= 4 ~ 25.775, .default = 16.675) + case_when(is.na(wt) ~
#> NA, wt <= 3.15 ~ 25.1555555555556, .default = 16.1636363636364) +
#> case_when(is.na(wt) ~ NA, wt <= 2.875 ~ 25.9714285714286,
#> .default = 17))/5LThese binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.