1

你好(这里是第一个计时器),

我想估计 R 中的“双向”聚类稳健方差 - 协方差矩阵。我正在使用“multiwayvcov”库中的特定罐头例程。我的问题仅与cluster.vcovR 中函数的设置有关。我有各种犯罪结果的面板数据。我的横截面单位是“辖区”(超过 40 个辖区),我在几个“月”(即 24 个月)内观察这些辖区的犯罪情况。我正在评估一种一年中只有几个月“开启”(虚拟编码)的干预措施。

我包括“区域”和“月”固定效应(即,一整套区域和月份虚拟变量进入模型)。我只有一个正在评估的自变量。我想聚集在“两个”维度上,但我不确定如何设置它。

我是否lm首先估计所有固定效应?或者,我是否只是简单地对自变量(不包括固定效应)运行一个回归犯罪的模型,然后使用cluster.vcovie, ~ precinct + month_year。

不过,这似乎会提供错误的标准错误。正确的?我希望这很清楚。很抱歉有任何混淆。请参阅下面的设置。

library(multiwayvcov)

model <- lm(crime ~ as.factor(precinct) + as.factor(month_year) + policy, data = DATASET_full)

boot_both <- cluster.vcov(model, ~ precinct + month_year)

coeftest(model, boot_both)

### What the documentation offers as an example
### https://cran.r-project.org/web/packages/multiwayvcov/multiwayvcov.pdf

library(lmtest)

data(petersen)

m1 <- lm(y ~ x, data = petersen)

### Double cluster by firm and year using a formula

vcov_both_formula <- cluster.vcov(m1, ~ firmid + year)

coeftest(m1, vcov_both_formula)

首先估计一个忽略固定效应的模型是否合适?

4

1 回答 1

2

首先是答案:您应该首先使用固定效应估计您的 lm 模型。这将为您提供渐近正确的参数估计。std 错误是不正确的,因为它们是根据假定 iid 错误的 vcov 矩阵计算的。

要将 iid 协方差矩阵替换为集群稳健的 vcov 矩阵,您可以使用 cluster.vcov,即my_new_vcov_matrix <- cluster.vcov(~ precinct + month_year).

然后是一个建议:我强烈推荐用于多路 fe 和集群鲁棒标准错误的函数felmlfe

语法如下:

library(multiwayvcov)
library(lfe)

data(petersen)

my_fe_model <- felm(y~x | firmid + year | 0 | firmid + year, data=petersen )

summary(my_fe_model)
于 2019-05-02T08:38:34.957 回答