来自多个回归输出的摘要数据帧 [英] summary dataframe from several multiple regression outputs

查看:128
本文介绍了来自多个回归输出的摘要数据帧的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在做多个OLS回归。我使用了以下lm函数:

  GroupNetReturnsStockPickers<  -  read.csv(GroupNetReturnsStockPickers.csv,header = 
ModelGroupNetReturnsStockPickers< - lm(StockPickersNet〜Mkt.RF + SMB + HML + WML,data = GroupNetReturnsStockPickers)
名称(GroupNetReturnsStockPickers)
总结(ModelGroupNetReturnsStockPickers)

哪些给我的摘要输出:

 调用:
lm(公式= StockPickersNet〜Mkt.RF + SMB + HML + WML,data = GroupNetReturnsStockPickers)

剩余:
最小1Q中位数3Q最大
-0.029698 -0.005069 -0.000328 0.004546 0.041948

系数:
估计标准错误t值Pr(> | t |)
(截取)4.655e-05 5.981e-04 0.078 0.938
Mkt.RF -1.713e-03 1.202e-02 -0.142 0.887
SMB 3.006e-02 2.545e-02 1.181 0.239
HML 1.970e-02 2.350e-02 0.838 0.403
WML 1.107e-02 1.444e-02 0.766 0.444

残差标准错误:251自由度上的0.009029
多个R平方:0.01033,调整后的R平方:-0.005445
F统计:0.6548在4和251 DF,p值:0.624

这是完美的。然而,我正在做10次多重OLS回归,而且我想在数据框中创建自己的汇总输出,其中我提取了所有10个分析的截取估计值,t值估计值和p值。 。因此,它将是一个10x3,其中列名称将是Model1,Model2,..,Model10和行名称:Value,t-value和p-Value。



感谢任何帮助。

解决方案

有几个软件包执行此操作(stargazer和texreg)以及 outreg



无论如何,如果你只对这里的拦截感兴趣是一种方法:

 适合< -  list()#创建空列表来存储模型
适合$ model1< - lm(Ozone〜Solar.R,data = airquality)
适合$ model2< - lm(Ozone〜Solar.R + Wind,data = airquality)
适合$ model3< - lm(Ozone〜Solar.R + Wind + Temp,data = airquality)

#组合拦截的结果
smry< - do.call(rbind ,$($)
rownames(smry)< - paste0(model,1:3)
t( smry)

#RESULT:
#model1 model2 model3
#估算18.598727772 7.724604e + 01 -64.342078929
#标准错误6.747904163 9.067507e + 00 23.054724347
#t值2.756222869 8.518995e + 00 -2.790841389
#Pr(> | t |)0.006856021 1.052118e-13 0.006226638


I am doing multiple OLS regressions. I have used the following lm function:

GroupNetReturnsStockPickers <- read.csv("GroupNetReturnsStockPickers.csv", header=TRUE, sep=",", dec=".")
ModelGroupNetReturnsStockPickers <- lm(StockPickersNet ~ Mkt.RF+SMB+HML+WML, data=GroupNetReturnsStockPickers)
names(GroupNetReturnsStockPickers)
summary(ModelGroupNetReturnsStockPickers)

Which gives me the summary output of:

    Call:
  lm(formula = StockPickersNet ~ Mkt.RF + SMB + HML + WML, data = GroupNetReturnsStockPickers)

Residuals:
  Min        1Q    Median        3Q       Max 
-0.029698 -0.005069 -0.000328  0.004546  0.041948 

Coefficients:
              Estimate Std. Error t value Pr(>|t|)
(Intercept)  4.655e-05  5.981e-04   0.078    0.938
Mkt.RF      -1.713e-03  1.202e-02  -0.142    0.887
SMB          3.006e-02  2.545e-02   1.181    0.239
HML          1.970e-02  2.350e-02   0.838    0.403
WML          1.107e-02  1.444e-02   0.766    0.444

Residual standard error: 0.009029 on 251 degrees of freedom
Multiple R-squared:  0.01033,   Adjusted R-squared:  -0.005445 
F-statistic: 0.6548 on 4 and 251 DF,  p-value: 0.624

This is perfect. However, I am doing a total of 10 multiple OLS regressions, and I wish to create my own summary output, in a data frame, where I extract the Intercept Estimate, the tvalue estimate, and the p-value, for all 10 analyzes individually. Hence it would be a 10x3, where the columns names would be Model1, Model2,..,Model10, and row names: Value, t-value and p-Value.

I appreciate any help.

解决方案

There's a few packages that do this (stargazer and texreg) as well as this code for outreg.

In any case, if you are only interested in the intercept here is one approach:

fits <- list() # Create empty list to store models
fits$model1 <- lm(Ozone ~ Solar.R, data = airquality)
fits$model2 <- lm(Ozone ~ Solar.R + Wind, data = airquality)
fits$model3 <- lm(Ozone ~ Solar.R + Wind + Temp, data = airquality)

# Combine the results for the intercept
smry <- do.call(rbind, lapply(fits, function(z) t(summary(z)$coefficients[1, ])))
rownames(smry) <- paste0("model", 1:3)
t(smry)

# RESULT:
#                  model1       model2        model3
# Estimate   18.598727772 7.724604e+01 -64.342078929
# Std. Error  6.747904163 9.067507e+00  23.054724347
# t value     2.756222869 8.518995e+00  -2.790841389
# Pr(>|t|)    0.006856021 1.052118e-13   0.006226638

这篇关于来自多个回归输出的摘要数据帧的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆