【问题标题】:Pooled estimates - regression model with broom and tidyverse汇总估计 - 带有 broom 和 tidyverse 的回归模型
【发布时间】:2018-02-05 17:39:25
【问题描述】:

我正在与一个团队合作,有些人正在使用 SPSS 替换缺失的案例(多重插补),然后分析数据。当 SPSS 估算新值时,它会报告每个数据集结果和一个汇总结果,这与所有结果的平均值不同。

现在,我正在使用 R 来处理在 SPSS 上创建的“多重插补数据集”。我正在尝试以与 SPSS 报告相同的方式从回归中获取 汇总估计。 Grace to this post here,我可以使用 broom 包运行多个回归模型并显示每个估计值。问题:一些统计数据是不同的。例如,使用扫帚​​时的 t 值高于 SPSS 报告的值。 请看一下这个 SPSS 输出。

为了简化这项工作,假设我想对每个 groupstars 回归 price,然后显示一个汇总估计值(t 检验结果和 p 值)的行。

代码:

   library(broom)
    d <- data.frame(group=rep(1:5, each = 20),
                    price=rnorm(100,1000,10),
                    stars=rnorm(100,3,1))
    fitted_models <- d %>% 
      group_by(group) %>% 
      do(model = lm(price ~ stars, data = .))
    fitted_models %>% tidy(model)
    fitted_models %>% glance(model)

如果您想更好地了解 SPSS 在做什么,请检查此实际输出。汇总并不是所有结果的平均值。

请随意说这个问题无关紧要,但不要否定这篇文章。其他人可能有同样的问题,我提供所有代码给你再次运行分析。

非常感谢

【问题讨论】:

  • 我认为您有两个不属于一起的问题。第一个是,“SPSS 在计算“Pooled”结果时在做什么?”这是 CrossValidated 的问题,而不是 Stack Overflow 的问题。第二个问题是“我如何在 R 中做 XYZ”?这可能是 SO 的一个问题,具体取决于 XYZ 究竟是什么。
  • 你说得对,@CurtF。我将这两个问题合并为一个问题,这可能不是最好的主意。

标签: r regression spss broom


【解决方案1】:

我不是 100% 确定您所说的“合并”估计是什么意思——这是否意味着您想在不分组的情况下运行模型?

如果是这样,那么这应该做你想要的。

d <- data.frame(group=rep(1:5, each = 20),
                price=rnorm(100,1000,10),
                stars=rnorm(100,3,1)
               )

fitted_models <- 
    d %>% 
        group_by(group) %>% 
        do(tidy(lm(data=., formula=price ~ stars))) %>%
        ungroup %>%
        mutate(group=group %>% as.character)


pooled_model <-
    d %>%
    do(tidy(lm(data=., formula=price ~ stars))) %>%
    mutate(group='pooled')

all_results <- bind_rows(fitted_models, pooled_model) %>% select(group, everything())

all_results

【讨论】:

  • 谢谢,@curt-f,但这个脚本高估了统计数据和 p.value。在真实数据集中,每个模型都有一个类似 9 的“t 统计量”,但池化模型有 42 个。我不知道如何解决这个问题。你 ?谢谢!
  • 您能否使用“汇总估计”的公式或方程式来编辑您的问题?
  • 亲爱的,@curt-f,我将编辑问题。但是,不幸的是,我不知道 SPSS 是如何得出这个结果的。
  • 我认为在你能更好地指定你想要它做什么之前,你不会得到关于你的 R 代码的帮助。
  • 好的,@curt-f,我将再次编辑初始文本。谢谢。
猜你喜欢
  • 2019-08-10
  • 2019-01-09
  • 2011-04-14
  • 1970-01-01
  • 1970-01-01
  • 2016-05-05
  • 2017-11-26
  • 2021-08-23
  • 1970-01-01
相关资源
最近更新 更多