【问题标题】:Delta method and clustered standard errorsDelta 方法和聚类标准误
【发布时间】: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


【解决方案1】:

只需编辑deltamethod 调用以输出答案 - 我不知道这个答案是否真的对您想要做的事情有意义。

deltamethod(
  g = formula('~x2/x1'), 
  mean = model1$coefficients, 
  cov = vcov, 
  ses = TRUE)

【讨论】:

    猜你喜欢
    • 2021-02-27
    • 2017-10-27
    • 1970-01-01
    • 2012-01-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多