gpt4 book ai didi

r - 具有集群标准错误的概率 - 等效于 Stata 命令

转载 作者:行者123 更新时间:2023-12-02 03:28:27 26 4
gpt4 key购买 nike

我在 Stata 中有以下 probit 命令并在 R 中查找等效代码:

probit mediation viol ethniccomp  lncrisisdur  lncapratio  lnten_mean durable_avg neighbors totaldem_nbrhd geostr medprev jointdem if newcrisis==1, cluster(crisno)

我能够复制系数的估计结果,但是,不能复制校正后的标准误差(它们是聚类的)

probit.3.1_1 <- glm(mediation ~           viol+ethniccomp+lncrisisdur+lncapratio+lnten_mean+durable_avg+neighbors+
totaldem_nbrhd+geostr+medprev+jointdem,
data=as.data.frame(basedata[basedata$newcrisis==1,]), family=binomial (link=probit))

我基本上是在 R 中寻找 Stata 选项 cluster(crisno) 的等价物。

我看过这个reply ,但据我所知,所提出的解决方案仅涉及 logit,而不是 probit。

最佳答案

我不知道解析解,所以我会在 R 中使用 boot 包中的 boot block Bootstrap 。

这是我将作为基准测试的 Stata 代码。

cd "C:\Users\Richard\Desktop\"
use "http://www.ats.ucla.edu/stat/stata/dae/binary.dta", clear
generate group = int((_n - 1) / 20) + 1
probit admit gpa gre, vce(cluster group)
outsheet using "binary.txt", replace

这里是 R 中的等效项。第二个 block 提供了 group 上的 block Bootstrap ,这是我在 Stata 中创建的随机聚类变量。

setwd("C:/Users/Richard/Desktop/")
df <- read.delim("binary.txt")

# homoskedastic
probit <- glm(admit ~ gpa + gre, data=df, family=binomial(link=probit))

# with block bootstrap using `boot` package
library(boot)
myProbit <- function(x, y) {
myDf <- do.call("rbind", lapply(y, function(n) subset(df, group == x[n])))
myModel <- glm(admit ~ gpa + gre, data=myDf, family=binomial(link=probit))
coefficients(myModel)
}
groups <- unique(df$group)
probitBS <- boot(groups, myProbit, 500)

# comparison
summary(probit)
probitBS

它们非常接近(Stata 结果后跟 R block Bootstrap 结果)。

Probit regression                                 Number of obs   =        400
Wald chi2(2) = 24.03
Prob > chi2 = 0.0000
Log pseudolikelihood = -240.094 Pseudo R2 = 0.0396

(Std. Err. adjusted for 20 clusters in group)
------------------------------------------------------------------------------
| Robust
admit | Coef. Std. Err. z P>|z| [95% Conf. Interval]
-------------+----------------------------------------------------------------
gpa | .454575 .1531717 2.97 0.003 .1543641 .7547859
gre | .0016425 .0006404 2.56 0.010 .0003873 .0028977
_cons | -3.003536 .520864 -5.77 0.000 -4.024411 -1.982662
------------------------------------------------------------------------------

> probitBS

ORDINARY NONPARAMETRIC BOOTSTRAP


Call:
boot(data = groups, statistic = myProbit, R = 500)


Bootstrap Statistics :
original bias std. error
t1* -3.003535745 -3.976856e-02 0.5420935780
t2* 0.454574799 3.781773e-03 0.1530609943
t3* 0.001642537 4.200797e-05 0.0006210689

关于r - 具有集群标准错误的概率 - 等效于 Stata 命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28908783/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com