【问题标题】:Summary stat from regression loop in rr中回归循环的汇总统计数据
【发布时间】:2018-10-11 07:39:35
【问题描述】:

我有一个像这样的数据框(FF_port_monthly_MAX)

date          1       2       3    mkreturn     SML      HML
2/1/2007     2.42   -0.11   4.41    0.41        0.06     0.61
3/1/2007     4.13    2.36   6.92    0.03        0.99    -0.38
4/1/2007    -0.13   -3.20   1.99    0.24       -3.20    -5.64
5/1/2007    11.50    9.13   8.96    0.14        1.13    -2.58

我用这个公式用三个自变量回归前三列:

fit <- lapply(FF_port_monthly_MAX[,2:4], function(x) lm(x ~ mkreturn + SML + HML, data = FF_port_monthly_MAX))

现在我喜欢使用这段代码提取系数和 t stat

summary(fit)

但我最终会得到这样的输出

Length Class  Mode
1 12     lm    list
2 12     lm    list
3 12     lm    list

现在谁能帮我为什么它没有显示系数和 t 值?

【问题讨论】:

  • lapply(fit,summary) 工作吗?
  • 非常感谢。它正在工作。@moooh
  • 这是因为您的fit 对象是一个列表,所以lapply() 获取该列表的每个元素并对其应用函数summary()
  • 好的,现在我明白了。

标签: r regression summary


【解决方案1】:

您也可以尝试tidyverse 方法

library(tidyverse)
FF_port_monthly_MAX %>% 
  select(starts_with("X"), mkreturn, SML, HML) %>% 
  gather(key, value, -mkreturn, -SML, -HML) %>% 
  split(.$key) %>% 
   map(~lm(formula = value ~  mkreturn + SML + HML, data=.)) %>% 
   map(~broom::tidy(.)) %>% 
   bind_rows(.id = "run")
# A tibble: 12 x 6
   run   term        estimate std.error statistic p.value
   <chr> <chr>          <dbl>     <dbl>     <dbl>   <dbl>
 1 X1    (Intercept)   -1.81        NaN       NaN     NaN
 2 X1    mkreturn      13.2         NaN       NaN     NaN
 3 X1    SML            4.68        NaN       NaN     NaN
 4 X1    HML           -2.39        NaN       NaN     NaN
 5 X2    (Intercept)   -3.45        NaN       NaN     NaN
 6 X2    mkreturn      10.8         NaN       NaN     NaN
 7 X2    SML            4.68        NaN       NaN     NaN
 8 X2    HML           -2.24        NaN       NaN     NaN
 9 X3    (Intercept)    4.47        NaN       NaN     NaN
10 X3    mkreturn       0.653       NaN       NaN     NaN
11 X3    SML            2.16        NaN       NaN     NaN
12 X3    HML           -0.757       NaN       NaN     NaN

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-08-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-03
    相关资源
    最近更新 更多