【发布时间】:2020-08-28 10:16:50
【问题描述】:
我有一个关于在聚集标准错误时如何应用 delta 方法的问题。考虑以下数据集和(简单)回归((请注意,这个问题不一定是围绕“我们”聚类是否有意义或该回归的正确性/有用性)。
#Use packages
library(multiwayvcov)
library(sandwich)
library(lmtest)
library(msm)
#load the data
data(mtcars)
# Run the regression
model1<-lm(mpg~cyl+gear+drat, data = mtcars)
#Calculate variance covariance matrix for clustered standard errors
vcov<-cluster.vcov(model1, mtcars$vs)
coeftest(model1, vcov)
# Apply delta method results in error
g<-model1$coefficients[2] / model1$coefficients[1]
deltamethod(g, mean, cov = vcov, ses=TRUE)
# Error I get is this one: "Error in deltamethod(g, mean = g, cov = vcov, ses = TRUE) :
# Covariances should be a 1 by 1 matrix"
现在我想计算系数 (cyl) 除以 (intercept) 的标准误差,当使用我的矩阵计算“vs”周围的聚集标准误差(即 vcov 矩阵)时。有谁知道如何做到这一点?我查看了这个网站,但由于某种原因,我在应用它时遇到了错误(https://rdrr.io/rforge/msm/man/deltamethod.html)。感谢您的帮助。
【问题讨论】:
-
你是如何应用这个方法的?你得到了什么错误?没有可重现的例子,很难看出你做错了什么。
-
你好奥利弗,很抱歉我的问题不完整。希望这会有所帮助。感谢您调查它。
-
看帮助,
?deltamethod。第一个参数应该是一个公式,您提供了两个数字的比率。 -
你好 Pseudospin,你是对的。我在我的 R 中正确地运行了它,但在这里我的问题中输入错误。当我插入“g”而不是分数时,错误保持不变。所以我仍然不确定我应该在这里改变什么。你有什么想法吗?
标签: r