使用 Broom 包获取许多线性回归的 Anova Table 中固定值的 P 值

Obtain P-Value of Fixed Value in Anova Table of many Linear Regressions with Broom Package

在多元线性回归lm(FE_FCE2 ~ Trial + .x, data = DF_FCE3)中有一个固定变量(试验)和许多x个变量。我正在分析每个 x 变量对 FE_FCE2 的试验作为固定效果。我将 boom 包用于许多回归并将结果绘制在一个 table 中。我已经获得了回归结果的结果。但是无法将方差分析 Table 中的数据添加到具有地图功能的 Broom 包中。

可能吗?是的,如何?

我使用以下公式从回归结果中获取数据:

DF_FCE3 %>% 
  select(-FE_FCE2, -Trial) %>%  # exclude outcome, leave only predictors 
  map( ~lm(FE_FCE2 ~ Trial + .x, data = DF_FCE3)) %>% 
  map(summary) %>% 
  map_df(glance) %>% 
  round(3) -> rsme

但是我想从试验的方差分析 Table 中获得 P 值 (**4.26e-08 *****)。 到 查看 Trial 是否对 x 变量有显着影响。

**$x1
Analysis of Variance Table

**Response: FE_FCE2
          Df  Sum Sq  Mean Sq F value   Pr(>F)    
Trial      3 0.84601 0.282002 15.0653 **4.26e-08 *****
.x         1 0.00716 0.007161  0.3826   0.5377    
Residuals 95 1.77827 0.018719**                     
---**

是否可以使用带有 map 函数的 broom 包来获得 table 其中包含方差分析回归的所有许多 p 值?

像这样(使用 mpg)? 此 returns 具有原始列和一行的数据框包含 p 值,但结果和目标除外(本例中的 hwycylFE_FCE2Trial 在你的情况下)。

mpg %>%
  select(-hwy, -cyl) %>%  # exclude outcome, leave only predictors 
  map( ~lm(hwy ~ cyl + .x, data = mpg)) %>% 
  map(anova) %>% 
  map(broom::tidy) %>%
  map_df(~.$p.value[1])