gpt4 book ai didi

r - R中的Heckman手动选择模型

转载 作者:行者123 更新时间:2023-12-04 10:12:02 31 4
gpt4 key购买 nike

我想在 R 中手动计算 Heckman 选择模型。
我的问题是标准错误是有偏见的。有没有办法手动更正这些?

下面是来自 sampleSelection 模型的(示例)代码(正确的 SE)和手动代码(正确的估计,错误的 SE)

 require(sampleSelection)

data( Mroz87 )
Mroz87$kids <- ( Mroz87$kids5 + Mroz87$kids618 > 0 )

使用样本选择
heckman <- selection(selection = lfp ~ age + I(age^2) + faminc + kids + educ, outcome = wage ~ exper + I(exper^2) + educ + city, 
data = Mroz87, method = "2step")
summary(heckman)

手动
seleqn1 <- glm(lfp ~ age + I(age^2) + faminc + kids + educ, family=binomial(link="probit"), data=Mroz87)
summary(seleqn1)

# Calculate inverse Mills ratio by hand ##
Mroz87$IMR <- dnorm(seleqn1$linear.predictors)/pnorm(seleqn1$linear.predictors)

# Outcome equation correcting for selection ## ==> correct estimates, wrong SEs
outeqn1 <- lm(wage ~ exper + I(exper^2) + educ + city + IMR, data=Mroz87, subset=(lfp==1))
summary(outeqn1)

最佳答案

myprobit    <- probit(lfp ~ age + I(age^2) + faminc + kids + educ - 1, x = TRUE, 
iterlim = 30, data=Mroz87)

imrData <- invMillsRatio(myprobit) # same as yours in this particular case
Mroz87$IMR1 <- imrData$IMR1

outeqn1 <- lm(wage ~ -1 + exper + I(exper^2) + educ + city + IMR1,
data=Mroz87, subset=(lfp==1))

最主要的是你使用拦截模型而不是无拦截。

关于r - R中的Heckman手动选择模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39069250/

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