クラスター数が少ない場合でもクラスターロバスト標準誤差を活用する:wild cluster bootstrap

document on top of stationery R
Photo by Lukas on Pexels.com

皆さんこんにちは。神奈川大学経営学部・准教授の尻無濱です。

重回帰分析でクラスターロバスト標準誤差を活用するとき、クラスター数が少ないことがあります。クラスター数は一般に20~30は必要と言われます。クラスター数が少ないと、クラスターロバスト標準誤差は真の標準誤差を過小に推定してしまい、誤った仮説検定の結果を導いてしまうそうです(詳しい議論は太田浩司先生の論文を参照)。

そのため、クラスター数が少ない場合には何らかの対応をしなければいけません。いろいろな方法が提案されているのですが、Cameron et al. (2008)が推奨しているwild cluster boostrapがRのパッケージを使うと簡単に実行できるので、ここで紹介しておきます。

使うパッケージは、fwildclusterbootパッケージです。このパッケージに含まれる boottest() 関数を使うことで、簡単にwild cluster boostrapを活用した結果を得ることができます。以下に、簡単な分析コードを書いておきます。

#パッケージをインストール
install.packages("fwildclusterboot")
library("fwildclusterboot")

#まずは普通の回帰分析を行う。2乗項や交差項が入っていてもOK
fit_lm <-lm(valueY 
            ~ valueX1 +
              valueX2 +
              valueX3 +
              I(valueX1^2) +
              valueX1 * valueX2, 
            data=D1)
summary(fit_lm)

#変数の数を設定
valnum <-length(names(fit_lm$coefficients))

#何も入っていないデータフレームを用意
WCboot <- data.frame(names=rep(NA,valnum),coef=rep(NA,valnum),
                     t_value=rep(NA,valnum),p_value=rep(NA,valnum),
                    CI_low=rep(NA,valnum),CI_high=rep(NA,valnum))

#wild-cluster bootstrapの実行
for (i in 1:valnum){
  #シード値を設定しておく
 set.seed(3776)
  #clustidにクラスターとして設定する変数を入れる。Bはリサンプリングの回数
  #paramは分析結果を返す変数の名前。すでに実行した回帰分析の結果から取得
  lm_boot <-  boottest(fit_lm, clustid = c("cluster1"),
                       B = 9999, param = names(fit_lm$coefficients)[i])
  WCboot$names[i] <- names(fit_lm$coefficients)[i]
  WCboot$coef[i] <- lm_boot$point_estimate
  WCboot$t_value[i] <- lm_boot$t_stat
  WCboot$p_value[i] <- lm_boot$p_val
  WCboot$CI_low[i] <- lm_boot$conf_int[1] #95%信頼区間の下限
  WCboot$CI_high[i] <- lm_boot$conf_int[2] #95%信頼区間の上限
}

#分析結果を確認
WCboot

#install.packages("modelsummary")
library("modelsummary")
msummary(lm_boot)

#分散説明率などを確認できる

より詳しい解説は、このページこのページなんかを参考にするとよいでしょう。

最後に、クラスターロバストな標準誤差については西山ほか(2019)『計量経済学』(有斐閣)を読むと読むと勉強になります(第6章)。また、Rを使ってデータ分析をしたい人には、星野ほか(2023)『Rによる実証分析 第2版』(オーム社)笠原・村宮(2022)『実証会計・ファイナンス』(新世社)をお勧めしておきます。とりわけ、企業の財務データや株価データを分析したいという人には、『実証会計・ファイナンス』を強くおススメしておきます。私自身、この本で勉強した内容を使って分析をしています。

コメント

タイトルとURLをコピーしました