如何解决如何替换向量整理器
我正在寻找另一个可以删除broom::tidy()
函数的函数。这是扫帚包装警告说的:
整齐的原子载体 不推荐使用矢量整理器,并且将从即将发布的扫帚中删除。
这里是功能的描述:
tidy()
产生一个tibble()
,其中每一行都包含有关模型重要组成部分的信息。对于回归模型,这通常对应于回归系数。如果您要检查模型或创建自定义可视化效果,这将很有用。
谢谢
约翰
解决方法
据我了解的警告,函数broom::tidy
并没有一般性的建议,仅当使用原子向量调用此警告时,才会发生此警告。在这种情况下,tibble()
似乎是一种替代产品:
在调用线性模型时,不会对tidy()发出过时警告:
library(broom)
fit <- lm(Volume ~ Girth + Height,trees)
tidy(fit)
## A tibble: 3 x 5
# term estimate std.error statistic p.value
# <chr> <dbl> <dbl> <dbl> <dbl>
#1 (Intercept) -58.0 8.64 -6.71 2.75e- 7
#2 Girth 4.71 0.264 17.8 8.22e-17
#3 Height 0.339 0.130 2.61 1.45e- 2
#弃用警告:
tidy(1:5)
## A tibble: 5 x 1
# x
# <int>
#1 1
#2 2
#3 3
#4 4
#5 5
#Warning messages:
#1: 'tidy.numeric' is deprecated.
#See help("Deprecated")
#2: `data_frame()` is deprecated as of tibble 1.1.0.
#Please use `tibble()` instead.
无警告,输出相同:
tibble(1:5)
## A tibble: 5 x 1
# `1:5`
# <int>
#1 1
#2 2
#3 3
#4 4
#5 5
,
该过时警告让您知道方法tidy.numeric
已被删除。
broom:::tidy.numeric
function (x,...)
{
.Deprecated()
if (!is.null(names(x))) {
dplyr::data_frame(names = names(x),x = unname(x))
}
else {
dplyr::data_frame(x = x)
}
}
您可以在此处看到对.Deprecated
的调用,其余函数仅调用data_frame
。由于不建议使用此功能,因此tibble
是新的解决方案。由于tibble
不支持行名,因此,如果要保存行名,则可以创建类似于上面的内容。
tidy.numeric <- function (x,...)
{
if (!is.null(names(x))) {
tibble::tibble(names = names(x),x = unname(x))
}
else {
tibble::tibble(x = x)
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。