Estoy realizando una regresión binomial negativa de los recuentos de clínicas en cada condado de todo el país (~3k condados). Me gustaría tener en cuenta, al menos en parte, la no independencia de los condados vecinos mediante el uso de bootstrap de los intervalos de confianza de forma "agrupada", por ejemplo, extrayendo los datos de todo un estado (50 estados en total) a la vez. Esto se ha convertido en práctica habitual para bien o para mal, en la literatura econométrica.
Podría escribir el código para hacer esto yo mismo, pero el boot
parece que debería tener la capacidad de hacer esto de alguna manera, y en general prefiero soluciones probadas y generales a hacks puntuales. ¿Hay alguna forma de forzar el boot
paquete para hacer un bootstrap agrupado?
Probé el strata
pero que aleatoriza en estratos en lugar de aleatorizar qué clúster se toma, como confirma el siguiente código:
dat <- data.frame( cluster=rep(letters[1:5],each=10), x=runif(5*10), stringsAsFactors=TRUE )
boot.stat <- function(dat,idx) {
print(dat[idx,]$cluster)
print(table(dat[idx,]$cluster))
mean(dat[idx,]$x)
}
boot(
data=dat,
statistic=boot.stat,
strata=dat$cluster,
stype="i",
R=5
)