Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
一种多向聚类鲁棒函数在R_R_Lm_Least Squares_Dummy Variable_Covariance Matrix - Fatal编程技术网

一种多向聚类鲁棒函数在R

一种多向聚类鲁棒函数在R,r,lm,least-squares,dummy-variable,covariance-matrix,R,Lm,Least Squares,Dummy Variable,Covariance Matrix,你好(第一次来这里) 我想估算R中的“双向”聚类鲁棒方差-协方差矩阵。我正在使用“multiwayvcov”库中的一个特定的罐装例程。我的问题只涉及R中cluster.vcov函数的设置。我有各种犯罪结果的面板数据。我的跨部门单位是“辖区”(40多个辖区),我在几个“月”(即24个月)内观察这些辖区的犯罪情况。我正在评估一项干预措施,该干预措施在一年中只“开启”(虚拟编码)几个月 我包括“选区”和“月份”固定效果(即,一整套选区和月份假人进入模型)。我只评估了一个自变量。我想在“两个”维度上进行

你好(第一次来这里)

我想估算R中的“双向”聚类鲁棒方差-协方差矩阵。我正在使用“multiwayvcov”库中的一个特定的罐装例程。我的问题只涉及R中
cluster.vcov
函数的设置。我有各种犯罪结果的面板数据。我的跨部门单位是“辖区”(40多个辖区),我在几个“月”(即24个月)内观察这些辖区的犯罪情况。我正在评估一项干预措施,该干预措施在一年中只“开启”(虚拟编码)几个月

我包括“选区”和“月份”固定效果(即,一整套选区和月份假人进入模型)。我只评估了一个自变量。我想在“两个”维度上进行群集,但我不确定如何设置

我是否先用
lm
估算所有固定效应?或者,我只需运行一个模型,对自变量(不包括固定效应)进行犯罪回归,然后使用
cluster.vcov
即~distinct+month\u 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)
库(多路VCOV)

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


要将iid协方差矩阵替换为群集鲁棒vcov矩阵,您可以使用cluster.vcov,即
my_new_vcov_矩阵谢谢您的及时回复!这两种功能我都喜欢。然而,
cluster.vcov
也能很好地处理
glm
对象(我也有计数数据)。如果我想与您分享我的数据集的一个子集以供澄清,那么在不复制和粘贴数百行的情况下将其发布到此处的最佳方式是什么?您可能会重新考虑使用glm的稳健协方差估计器。回复:如何将数据附加到SO问题。看看这里的例子,谢谢大家!采用“双聚类”方法(即“单位”和“时间”聚类)有时会在方差协方差矩阵中产生负方差。当
vcovCL
功能内的
fix=TRUE
时,可以纠正此问题。为什么“双向”聚类会产生负方差?这不是不可能吗?虽然我已经纠正了这个问题,但从概念上讲,我很难理解它。有什么想法吗?@Tom如果你提出一个新问题,而不是在之前(不相关)问题的评论中提问,那么你的问题将获得更多的听众。
library(multiwayvcov)
library(lfe)

data(petersen)

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

summary(my_fe_model)