Bootstrapping paramétrico, semiparamétrico y no paramétrico para modelos mixtos

9

Los siguientes injertos se toman de este artículo . Soy novato en bootstrap e intento implementar el bootstrapping paramétrico, semiparamétrico y no paramétrico para el modelo mixto lineal con R bootpaquete.

ingrese la descripción de la imagen aquí ingrese la descripción de la imagen aquí ingrese la descripción de la imagen aquí ingrese la descripción de la imagen aquí ingrese la descripción de la imagen aquí

Código R

Aquí está mi Rcódigo:

library(SASmixed)
library(lme4)
library(boot)

fm1Cult <- lmer(drywt ~ Inoc + Cult + (1|Block) + (1|Cult), data=Cultivation)
fixef(fm1Cult)


boot.fn <- function(data, indices){
 data <- data[indices, ]
 mod <- lmer(drywt ~ Inoc + Cult + (1|Block) + (1|Cult), data=data)
 fixef(mod)
 }

set.seed(12345)
Out <- boot(data=Cultivation, statistic=boot.fn, R=99)
Out

Preguntas

  1. ¿Cómo hacer bootstrapping paramétrico, semiparamétrico y no paramétrico para modelos mixtos con bootpaquete?
  2. Supongo que estoy haciendo bootstrapping no paramétrico para el modelo mixto en mi código.

He encontrado estas diapositivas , pero no pude conseguir el paquete R merBoot. Alguna idea de dónde puedo obtener este paquete. Cualquier ayuda será muy apreciada. Gracias de antemano por su ayuda y tiempo.

MYaseen208
fuente

Respuestas:

8

Bootstrapping en modelos lineales mixtos es muy similar a bootstrapping en regresión, excepto que tiene la complicación de que los efectos se dividen en fijos y aleatorios. En la regresión para hacer el bootstrap paramétrico, usted ajusta el modelo paramétrico a los datos, calcula los residuales del modelo, arranca los residuales, toma los residuales del bootstrap y los agrega al modelo ajustado para obtener una muestra de bootstrap para los datos y luego ajusta el modelo a los datos de bootstrap para obtener estimaciones de parámetros de muestra de bootstrap. Repite el procedimiento reiniciando los residuos originales nuevamente y luego repite los otros pasos en el procedimiento para obtener otra estimación de muestra de inicialización de los parámetros. Para el bootstrap no paramétrico, cree el vector de los valores de respuesta y covariables y arranque la selección de vectores para la muestra de bootstrap. A partir de la muestra de bootstrap, usted ajusta el modelo para obtener los parámetros y repite el proceso. La única diferencia entre el bootstrap paramétrico y no paramétrico es que se arrancan los residuales para el bootstrap paramétrico mientras que el bootstrap no paramétrico arranca los vectores. En el caso del modelo mixto, también puede tener una rutina de arranque semiparamétrica tratando algunos efectos paramétricamente y otros no paramétricamente. Si su código es vectores de arranque, está haciendo el arranque no paramétrico. No tengo una solución específica para hacer esto en R, pero si miras el libro de Efron y Tibshirani o mi libro con Robert LaBudde, verás el código R para tipos de modelos similares al modelo mixto lineal.

Michael R. Chernick
fuente
Gracias @ Michael por tu buena respuesta. Le agradecería mucho que comparta ejemplos de los tres métodos de arranque implementados en R.
MYaseen208
No creo que tenga ejemplos semiparamétricos. No soy un programador R (todavía). Robert LaBudde hizo toda la programación R en nuestro libro. Da un ejemplo de una rutina de arranque paramétrica codificada en R para un modelo autorregresivo estacionario (pp 120-122). En la página 10 del libro, muestra todas las funciones de bootstrap en R que aparecen usando la consulta "> help.search ('bootstrap') Efron y Tibshirani han documentado en su libro el paquete de bootstrap en R que llaman" bootstrap "otro paquete debido a Davison y Hinkley es su paquete de "arranque", que se puede encontrar más información sobre el libro en su arranque.
Michael R. Chernick
Cabe mencionar que el arranque estricto no paramétrico de un modelo mixto es propenso a fallar. Puede omitir completamente un nivel de una variable aleatoria, lo que detiene el proceso.
Bryan
2

Es posible que desee echar un vistazo a la bootMerfunción en la versión de desarrollo de lme4,

install_github("lme4",user="lme4")
library(lme4)

que puede hacer bootstrapping paramétrico (semi) basado en modelos de modelos mixtos ... Simplemente verifique ?bootMer

Tom Wenseleers
fuente