gpt4 book ai didi

r - 如何进行 lm.ridge 摘要?

转载 作者:行者123 更新时间:2023-12-01 22:18:20 27 4
gpt4 key购买 nike

我想知道有没有办法在 R 中输出岭回归的摘要?它是 lm.ridge{MASS} 函数的结果。

对于标准线性模型,您只需执行summary(lm_model),但是岭回归模型呢?感谢您的帮助。

最佳答案

我刚刚添加了一个方法,该方法将(或更准确地说, tidies )"ridgelm" 对象汇总到我的 broom 中包裹。它采用两个 S3 泛型的形式:tidyglance。您可以使用 devtools::install_github("dgrtwo/broom") 安装它(尽管您需要先安装 devtools)。

作为示例,让我们设置岭回归:

library(MASS)
names(longley)[1] <- "y"
fit <- lm.ridge(y ~ ., longley, lambda = seq(0.001, .05, .001))

tidy 函数提供了一个数据框,显示 lambda 和估计项的每种组合:

library(broom)
td <- tidy(fit)
head(td)
## lambda GCV term estimate
## 1 0.001 0.1240 GNP 23.02
## 2 0.002 0.1217 GNP 21.27
## 3 0.003 0.1205 GNP 19.88
## 4 0.004 0.1199 GNP 18.75
## 5 0.005 0.1196 GNP 17.80
## 6 0.006 0.1196 GNP 16.99

虽然 glance 函数创建单行摘要,特别是通过各种方法选择 lambda:

g <- glance(fit)
g
## kHKB kLW lambdaGCV
## 1 0.006837 0.05267 0.006

这很有用,因为它使您可以轻松地自己绘制和探索数据,而不是依赖 MASS 绘图仪:

library(ggplot2)
ggplot(td, aes(lambda, estimate, color = term)) + geom_line()

enter image description here

# plot of GCV versus lambda
ggplot(td, aes(lambda, GCV)) + geom_line() +
geom_vline(xintercept = g$lambdaGCV, col = "red", lty = 2)

enter image description here

有关这些方法的更多信息,请参阅 ?ridgelm_tidiers,或者参阅包的插图以了解有关 tidyglance 方法的一般信息。

关于r - 如何进行 lm.ridge 摘要?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26364665/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com