¿Cómo puedo estimar los intervalos de confianza del 95% usando la creación de perfiles para los parámetros estimados maximizando una función de log-verosimilitud usando optim en R?

9

¿Cómo puedo estimar los intervalos de confianza del 95% usando la creación de perfiles para los parámetros estimados maximizando una función de log-verosimilitud usando optim en R?

Sé que puedo estimar asintóticamente la matriz de covarianza invirtiendo el hessian , pero me preocupa que mis datos no cumplan con los supuestos necesarios para que este método sea válido. Prefiero estimar los intervalos de confianza utilizando algún otro método.

¿Es apropiado el método de probabilidad de perfil , como se discutió en Stryhn y Christensen , y en el libro MASS de Venables y Ripley, §8.4, págs. 220-221?

Si es así, ¿hay algún paquete que pueda ayudarme a hacer esto en R? Si no, ¿cómo sería el pseudocódigo para tal método?

fmark
fuente

Respuestas:

6

La mlefunción del paquete stats4 es una envoltura de optim, lo que hace que sea bastante fácil producir cálculos de probabilidad de perfil. Ver help("profile,mle-method", package = "stats4")para más información.

NRH
fuente
Esto es exactamente lo que quiero hacer :) ¡Ahora para que funcione!
fmark
@fmark, lo fácil que es hacer que funcione correctamente depende del problema de optimización. Lo uso mucho para enseñar con problemas bastante simples (uno a tres parámetros) y modelos "agradables" y para problemas prácticos simples. Sin embargo, si la probabilidad es difícil de optimizar y perfilar, probablemente no funcionará de inmediato.
NRH
2

Existe el paquete ProfileLikelihood si usa nlme. Personalmente, no he logrado usarlo.

Usando el paquete lme4a o lmeEigen hay una función profile () que tiene exactamente el objetivo de hacer lo que desea. Pruebe algo así para instalar estos paquetes:

install.packages("lme4a",repos="http://lme4.r-forge.r-project.org/repos") 

o vaya al sitio web para obtener el archivo zip. De manera similar y desafortunadamente, no he logrado usarlo :) Tal vez deberíamos esperar una actualización de lme4.

El método se detalla en el borrador del libro de Douglas Bates

EDITAR: ¡Genial! La función profile () para los modelos lmer ahora está disponible en la última versión de lme4, que se instalará escribiendo:

install.packages("lme4",repos="http://r-forge.r-project.org")
Stéphane Laurent
fuente
Me doy cuenta de que no había leído la pregunta original con la suficiente precisión. Mi respuesta es para el caso de modelos mixtos. Creo que la respuesta de NRH a continuación es para el caso de los modelos clásicos.
Stéphane Laurent