【问题标题】:Unbalanced panel error in PMG Analysis in RR中PMG分析中的不平衡面板错误
【发布时间】:2021-03-10 15:24:59
【问题描述】:

我正在尝试在 R 中运行 Fama Macbeth 分析,其中我使用带有以下代码的“pmg”函数:

Fpmg1 <- pmg(ret ~ HML_OBS + SMB + Mktrf + HML, Analysis4_Weighted, index = c("permno"))
summary(Fpmg1)

我目前有 1,354,623 个条目和 11 个总列。我得到以下输出,其中我的系数估计值为 NA。

Mean Groups model

Call:
pmg(formula = ret ~ HML_OBS + SMB + Mktrf + HML, data = Analysis4_Weighted, 
    index = c("date", "permno"))

Unbalanced Panel: n = 295, T = 3567-6287, N = 1349058

Residuals:
     Min.   1st Qu.    Median      Mean   3rd Qu.      Max. 
-1.065356 -0.077703 -0.008573  0.000000  0.060437 19.741368 

Coefficients:
             Estimate Std. Error z-value Pr(>|z|)   
(Intercept) 0.0110395  0.0034105   3.237 0.001208 **
HML_OBS            NA         NA      NA       NA   
SMB                NA         NA      NA       NA   
Mktrf              NA         NA      NA       NA   
HML                NA         NA      NA       NA   
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Total Sum of Squares: 50764
Residual Sum of Squares: 45906
Multiple R-squared: 0.0957

在运行模型之前,我已经对以下内容进行了排序:

Analysis4_Weighted <- 
  Analysis4_Weighted %>%
  dplyr::filter(!is.na(HML_OBS))

Analysis4_Weighted <- 
  Analysis4_Weighted %>%
  dplyr::filter(!is.na(ret))

Analysis4_Weighted <- 
  Analysis4_Weighted %>%
  group_by(date) %>%
  dplyr::filter(n() > 10)

你知道为什么我没有得到任何估计吗?

我的数据包含不同股票在很长一段时间内的各种收益,我试图测试这些系数预测各种股票在一段时间内的股票收益的能力。

谢谢!

【问题讨论】:

    标签: r regression linear-regression


    【解决方案1】:

    这可能是由于 pmg 要求对于每个 permno 的横截面回归,对于每个 permno 的 n 因子都有 n+1 次序列。对于每个 permno,您可能没有 n+1 次系列。您需要为缺失的时间序列生成数据,或者消除没有足够时间序列进行估计的 permno。

    【讨论】:

      猜你喜欢
      • 2019-06-18
      • 1970-01-01
      • 2014-10-30
      • 2013-11-22
      • 1970-01-01
      • 2020-06-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多