Title: | Robust Empirical Bayes Confidence Intervals |
---|---|
Description: | Computes empirical Bayes confidence estimators and confidence intervals in a normal means model. The intervals are robust in the sense that they achieve correct coverage regardless of the distribution of the means. If the means are treated as fixed, the intervals have an average coverage guarantee. The implementation is based on Armstrong, Kolesár and Plagborg-Møller (2022) <doi:10.3982/ECTA18597>. |
Authors: | Michal Kolesár [aut, cre] |
Maintainer: | Michal Kolesár <[email protected]> |
License: | MIT + file LICENSE |
Version: | 1.0.0.9000 |
Built: | 2025-02-15 02:53:50 UTC |
Source: | https://github.com/kolesarm/ebci |
Computes the critical value from Armstrong, Kolesár, and Plagborg-Møller (2022).
cva(m2, kappa = Inf, alpha = 0.05, check = TRUE)
cva(m2, kappa = Inf, alpha = 0.05, check = TRUE)
m2 |
Bound on second moment of the normalized bias, |
kappa |
Bound on the kurtosis of the normalized bias,
|
alpha |
Determines confidence level, |
check |
If |
Returns a list with 4 components:
cv
Critical value for constructing two-sided confidence intervals.
alpha
The argument alpha
.
x
Support points for the least favorable distribution for the
squared normalized bias, .
p
Probabilities associated with the support points.
Tim Armstrong, Michal Kolesár, and Mikkel Plagborg-Møller. Robust empirical Bayes confidence intervals. Econometrica, 90(6):2567–2602, November 2022. doi:10.3982/ECTA18597.
# Usual critical value cva(m2=0, kappa=Inf, alpha=0.05) # Larger critical value that takes bias into account. Only uses second moment # constraint on normalized bias. cva(m2=4, kappa=Inf, alpha=0.05) # Add a constraint on kurtosis. This tightens the critical value. cva(m2=4, kappa=3, alpha=0.05)
# Usual critical value cva(m2=0, kappa=Inf, alpha=0.05) # Larger critical value that takes bias into account. Only uses second moment # constraint on normalized bias. cva(m2=4, kappa=Inf, alpha=0.05) # Add a constraint on kurtosis. This tightens the critical value. cva(m2=4, kappa=3, alpha=0.05)
This dataset contains a subset of the publicly available data from Chetty and Hendren (2018). It contains raw estimates and standard errors of neighborhood effects at the commuting zone level
cz
cz
A data frame with 741 rows corresponding to commuting zones (CZ) and 10 columns corresponding to the variables:
Commuting zone ID
Name of CZ
2-digit state code
Population according to the year 2000 Census
Fixed-effect estimate of the causal effect of living in the CZ for one year on children's percentile rank in the national distribution of household earnings at age 26 relative to others in the same birth cohort for children growing up with parents at the 25th percentile of national income distribution
Fixed-effect estimate of the causal effect of living in the CZ for one year on children's percentile rank in the national distribution of household earnings at age 26 relative to others in the same birth cohort for children growing up with parents at the 75th percentile of national income distribution
Standard error of theta25
Standard error of theta75
Average percentile rank in the national distribution of household earnings at age 26 relative to others in the same birth cohort for stayers (children who grew up in the CZ and did not move) with parents at the 25th percentile of national income distribution.
Average percentile rank in the national distribution of household earnings at age 26 relative to others in the same birth cohort for stayers (children who grew up in the CZ and did not move) with parents at the 75th percentile of national income distribution.
https://opportunityinsights.org/data/?paper_id=599
Chetty, R., & Hendren, N. (2018). The Impacts of Neighborhoods on Intergenerational Mobility II: County-Level Estimates. The Quarterly Journal of Economics, 133(3), 1163–1228. doi:10.1093/qje/qjy006
Computes empirical Bayes estimators based on shrinking towards a regression, and associated robust empirical Bayes confidence intervals (EBCIs), as well as length-optimal robust EBCIs.
ebci( formula, data, se, weights = NULL, alpha = 0.1, kappa = NULL, wopt = FALSE, fs_correction = "PMT" )
ebci( formula, data, se, weights = NULL, alpha = 0.1, kappa = NULL, wopt = FALSE, fs_correction = "PMT" )
formula |
object of class |
data |
optional data frame, list or environment (or object coercible by
|
se |
Standard errors |
weights |
An optional vector of weights to be used in the fitting
process in computing |
alpha |
Determines confidence level, |
kappa |
If non- |
wopt |
If |
fs_correction |
Finite-sample correction method used to compute
|
Returns a list with the following components:
mu2
Estimated second moment of
,
. Vector
of length 2, the first element corresponds to the estimate after the
finite-sample correction as specified by
fs_correction
, the second
element is the uncorrected estimate.
kappa
Estimated kurtosis of
. Vector of length 2 with the same
structure as
mu2
.
delta
Estimated regression coefficients
X
Matrix of regressors
alpha
Determines confidence level used.
df
Data frame with components described below.
df
has the following components:
w_eb
EB shrinkage factors,
w_opt
Length-optimal shrinkage factors
ncov_pa
Maximal non-coverage of parametric EBCIs
len_eb
Half-length of robust EBCIs based on EB shrinkage, so
that the intervals take the form cbind(th_eb-len_eb, th_eb+len_eb)
len_op
Half-length of robust EBCIs based on length-optimal
shrinkage, so that the intervals take the form cbind(th_op-len_op,
th_op+len_op)
len_pa
Half-length of parametric EBCIs, which take the form
cbind(th_eb-len_pa, th_eb+len_a)
len_us
Half-length of unshrunk CIs, which take the form
cbind(th_us-len_us, th_us+len_us)
th_us
Unshrunk estimate
th_eb
EB estimate.
th_op
Estimate based on length-optimal shrinkage.
se
Standard error , as supplied by the
argument
se
weights
Weights used
residuals
The residuals
Tim Armstrong, Michal Kolesár, and Mikkel Plagborg-Møller. Robust empirical Bayes confidence intervals. Econometrica, 90(6):2567–2602, November 2022. doi:10.3982/ECTA18597.
## Same specification as in empirical example in Armstrong, Kolesár ## and Plagborg-Møller (2022), but only use data on NY commuting zones r <- ebci(theta25 ~ stayer25, data=cz[cz$state=="NY", ], se=se25, weights=1/se25^2)
## Same specification as in empirical example in Armstrong, Kolesár ## and Plagborg-Møller (2022), but only use data on NY commuting zones r <- ebci(theta25 ~ stayer25, data=cz[cz$state=="NY", ], se=se25, weights=1/se25^2)