R seules alternatives à BUGS [fermé]

13

Je suis un cours sur les statistiques bayésiennes utilisant BUGS et R. Maintenant, je connais déjà BUGS, c'est génial mais je n'aime pas vraiment utiliser un programme séparé plutôt que juste R.

J'ai lu qu'il y a beaucoup de nouveaux packages bayésiens dans R. Existe-t-il une liste ou une référence sur les packages disponibles pour les statistiques bayésiennes et à quoi servent-ils? Et, existe-t-il une alternative au package R pour la flexibilité de BUGS?

Sacha Epskamp
la source

Réponses:

8

Vous pouvez jeter un œil au package MCMCglmm qui est livré avec de très belles vignettes. Il y a aussi une bayesglm()fonction pour adapter les modèles linéaires généralisés bayésiens dans le paquet de bras , par Andrew Gelman. J'ai également entendu parler d'une future version blmer / bglmerfonctions pour la modélisation hiérarchique dans le même package.

chl
la source
2
Dans le bras du paquet, il y a les bogues de fucntion, qui vous permettent d'appeler des bogues de R. C'est ce que j'utilise dans ma recherche. Dans le blog de Gelman, il y a un exemple de calage de winbugs par R.
Manoel Galdino
6

Quelques personnes que je connais utilisent JAGS . La syntaxe JAGS est similaire à BUGS.

csgillespie
la source
(+1 mais je pense que l'OP est après une pure solution R.) Cela fonctionne très bien avec le paquetage rjags , mais nous devons encore spécifier notre modèle dans la syntaxe BUGS dans un fichier externe.
chl
5

Deuxièmement, la vue de tâche bayésienne. Je voudrais simplement ajouter un vote pour MCMCpack , un package mature qui propose une variété de modèles. Pour la plupart, c'est assez bien documenté aussi.

JMS
la source
0

Les performances sont la principale raison pour laquelle les gens utilisent WinBUGS / OpenBUGS / JAGS par rapport à des packages comme MCMglmm. Il est très difficile de ne pas écrire un échantillonneur Gibbs efficace en R. natif. Il existe des packages qui vous permettent d'exécuter des modèles BUGS à partir d'un script R, notamment RBUGS et BUGSParallel .

Jeff Hall
la source
1
MCMCglammest un mauvais exemple car «[toute] simulation est effectuée en C / C ++ en utilisant la bibliothèque CSparse pour les systèmes linéaires clairsemés» (voir résumé ).
Bernd Weiss
1
-1; voir @Bernd. La plupart des packages matures utilisent du code compilé. La principale raison est en fait que BUGS et al sont plus flexibles en ce sens qu'ils peuvent s'adapter à plus de modèles. Bien que cela puisse conduire à un calcul plus efficace puisqu'un package R - même avec du code compilé - doit être plus général, il peut ne pas l'être.
JMS
1
MCMCpack utilise du code C / C ++ compilé, optimisé pour la tâche à accomplir, donc c'est en fait plus rapide que de faire quelque chose dans un package généralisé comme JAGS (pour une tâche particulière).
Wayne