Wald 在 R 中测试自举估计

Wald Testing Bootstrapped Estimates in R

我已经执行了多元回归(特别是使用 quantreg 在 R 中使用多个预测变量的分位数回归)。我根据自举估计估计了标准误差和置信区间。现在我想测试不同分位数的估计值是否存在显着差异(Wald 测试更可取)。我该怎么做?

FML <- as.formula(outcome ~ VAR + c1 + c2 + c3)
quantiles <- c(0.25, 0.5, 0.75)
q.Result <- rqs(FML, tau=quantiles, data, method="fn", na.action=na.omit)
q.Summary <- summary(Q.mod, se="boot", R=10000, bsmethod="mcmb",
                            covariance=TRUE)

q.Summary 我提取了自举(即 10000)估计值(即 10000 个自举 B 值的向量)。

注意:实际上,我对比较所有协变量(在 FML 中)的估计值并不是特别感兴趣,我主要对比较 VAR 的估计值感兴趣。最好的方法是什么?

咨询了一位同事,我们决定可以使用 Wald 检验比较不同 taus 的估计值,如下所示。

来自

生成的对象 rqs
q.Summary <- summary(Q.mod, se="boot", R=10000, bsmethod="mcmb", covariance=TRUE)

在这种情况下,您提取感兴趣变量的自举 Beta 值 VARFML 中每个 tau

的第一个协变量
boot.Bs <- sapply(q.Summary, function (x) x[["B"]][,2])
B0 <- coef(summary(lm(FML, data)))[2,1] # Extract liner estimate data linear estimate

然后计算 wald 统计量并获得具有自由度分位数的 pvalue

Wald <- sum(apply(boot.Bs, 2, function (x) ((mean(x)-B0)^2)/var(x)))
Pvalue <- pchisq(Wald, ncol(boot.Bs), lower=FALSE)

您还想验证自举 Betas 是否呈正态分布,如果您 运行 许多 taus,检查所有这些 QQ 图可能会很麻烦,所以只需按行求和即可

qqnorm(apply(boot.Bs, 1, sum))
qqline(apply(boot.Bs, 1, sum), col = 2)

这似乎有效,如果有人认为我的解决方案有任何问题,请分享