微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

GLM - 使用分类预测器运行简单线性回归时没有 R 平方输出

如何解决GLM - 使用分类预测器运行简单线性回归时没有 R 平方输出

我正在运行带有数值响应(幸福感)和分类解释(教育)变量的简单线性回归。我知道有一些关于将分类变量处理为连续的想法,但在这种情况下,我想继续将其视为一个因素。

现在...

当我想用 R 平方评估这个模型的数量时,扫帚包的扫视功能没有为我提供指标。

在我的理解中,这里的空模型是响应变量的平均值,我在这里创建的线性模型是映射到解释变量上的响应变量。这里必须有某种效果大小可以衡量。

你怎么看?为什么我不能得到 R 平方,是否会有另一种效果大小告诉我通过包含这个分类预测变量来改进模型。

df <- tibble(education = c("Low","Medium","High","Low","High"),wellbeing = c(7,6,7,4,5,5))
df$education <- as.factor(df$education)

mdl <- glm(
  wellbeing ~ education + 0,data = df,family = gaussian
)

library(dplyr)
library(broom)
mdl_scgeluk_min_havovwombo %>%
  glance() %>%
  pull(r.squared)

解决方法

正如@Roland 在评论中指出的,您可以使用 lm() 并调用 summary() 函数,

summary(lm(
  wellbeing ~ education + 0,data = df,family = gaussian
))$r.squared

 0.9552469

或者因为我们知道普通最小二乘法的 R 平方公式是:

enter image description here

我们可以从您的 glm 结果中提取出来:

mdl <- glm(
  wellbeing ~ education + 0,family = gaussian
)

1 - mdl$deviance/mdl$null.deviance

 0.9552469

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。