Comment puis-je estimer les intervalles de confiance à 95% en utilisant le profilage des paramètres estimés en maximisant une fonction log-vraisemblance en utilisant optim dans R?

9

Comment puis-je estimer les intervalles de confiance à 95% en utilisant le profilage des paramètres estimés en maximisant une fonction log-vraisemblance en utilisant optim dans R?

Je sais que je peux estimer asymptotiquement la matrice de covariance en inversant la toile de jute , mais je crains que mes données ne répondent pas aux hypothèses requises pour que cette méthode soit valide. Je préfère estimer les intervalles de confiance en utilisant une autre méthode.

La méthode de vraisemblance du profil est-elle appropriée, comme discuté dans Stryhn et Christensen , et dans le livre MASS de Venables et Ripley, §8.4, pp. 220-221?

Si oui, existe-t-il des packages qui peuvent m'aider à le faire dans R? Sinon, à quoi ressemblerait le pseudo-code d'une telle méthode?

fmark
la source

Réponses:

6

La mlefonction du package stats4 est un wrapper de optim, ce qui facilite la production de calculs de vraisemblance de profil. Voir help("profile,mle-method", package = "stats4")pour plus d'informations.

NRH
la source
C'est exactement ce que je veux faire :) Maintenant, pour que ça marche!
fmark
@fmark, la simplicité de son fonctionnement dépend du problème d'optimisation. Je l'utilise beaucoup pour l'enseignement avec des problèmes assez simples (un à trois paramètres) et des modèles "sympas" et pour des problèmes pratiques simples. Cependant, si la probabilité est difficile à optimiser et à profiler, elle ne fonctionnera probablement pas hors de la boîte.
NRH
2

Il existe le package ProfileLikelihood si vous utilisez nlme. Personnellement, je n'ai pas réussi à l'utiliser.

En utilisant le package lme4a ou lmeEigen, il existe une fonction profile () qui vise exactement à faire ce que vous voulez. Essayez quelque chose comme ça pour installer ces packages:

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

ou allez sur le site Web pour obtenir l'archive zip. De même et malheureusement, je n'ai pas réussi à l'utiliser :) Peut-être qu'on devrait attendre une mise à jour de lme4.

La méthode est détaillée dans le projet de livre de Douglas Bates

EDIT: Cool! La fonction profile () pour les modèles lmer est désormais disponible dans la dernière version de lme4, à installer en tapant:

install.packages("lme4",repos="http://r-forge.r-project.org")
Stéphane Laurent
la source
Je me rends compte que je n'avais pas lu la question originale avec suffisamment de précision. Ma réponse est pour le cas des modèles mixtes. Je pense que la réponse de NRH ci-dessous concerne le cas des modèles classiques.
Stéphane Laurent