在 tidymodels 中,我们以原始数据和公式不包含在结果调用中的方式处理事物(以通常的方式)。某些部分multinom()
希望那些(加上同一位置的实际数据)进行计算。
我们只是改变了处理公式的方式;现在可以通过,如果您multinom()
直接拨打电话就会出现这种情况。我们不能真正做同样的事情,data
但我们确实添加了一个名为的新函数repair_call()
,您可以使用它来按照您想要的方式制作东西。
# devtools::install_dev("parsnip")
library(parsnip)
library(broom)
multi_spec <- multinom_reg() %>%
set_engine("nnet") %>%
set_mode("classification")
multi_fit <- multi_spec %>%
fit(Species ~ Sepal.Width, data = iris)
tidy(multi_fit)
#> Error in as.data.frame.default(data, optional = TRUE): cannot coerce class '"function"' to a data.frame
multi_fit_new <- repair_call(multi_fit, iris)
tidy(multi_fit_new)
#> # A tibble: 4 x 6
#> y.level term estimate std.error statistic p.value
#> <chr> <chr> <dbl> <dbl> <dbl> <dbl>
#> 1 versicolor (Intercept) 1.55e+8 3.06 6.15 7.54e-10
#> 2 versicolor Sepal.Width 2.20e-3 0.991 -6.17 6.70e-10
#> 3 virginica (Intercept) 4.41e+5 2.69 4.83 1.33e- 6
#> 4 virginica Sepal.Width 1.69e-2 0.844 -4.84 1.33e- 6
由reprex 包于 2020-05-22 创建(v0.3.0)