R nur Alternativen zu BUGS [geschlossen]

13

Ich besuche einen Kurs zur Bayes'schen Statistik mit BUGS und R. Nun, ich kenne BUGS bereits, es ist großartig, aber ich mag es nicht wirklich, ein separates Programm zu verwenden, anstatt nur R.

Ich habe gelesen, dass es in R viele neue Bayesianische Pakete gibt. Gibt es eine Liste oder einen Verweis darauf, welche Pakete für die Bayesianische Statistik vorhanden sind und was diese tun? Und gibt es eine R-Paket-Alternative für die Flexibilität von BUGS?

Sacha Epskamp
quelle

Antworten:

8

Sie können sich das MCMCglmm- Paket ansehen , das mit sehr schönen Vignetten geliefert wird . Es gibt eine auch eine bayesglm()Funktion zum Einpassen Bayesian verallgemeinerten linearen Modelle im Arm Paket von Andrew Gelman. Ich habe auch von einer zukünftigen Version blmer / bglmerFunktionen für hierarchische Modellierung im selben Paket gehört.

chl
quelle
2
Im Paket-Arm gibt es die Funktion Bugs, mit der Sie Bugs aus R aufrufen können. Diese Funktion verwende ich in meiner Recherche. Im Blog von Gelman gibt es ein Beispiel für das Abrufen von Winbugs von R.
Manoel Galdino,
6

Einige Leute, die ich kenne, haben JAGS verwendet . Die JAGS-Syntax ähnelt BUGS.

csgillespie
quelle
(+1, aber ich denke, das OP ist nach einer reinen R-Lösung.) Es funktioniert gut mit dem rjags- Paket, aber wir müssen unser Modell immer noch in der BUGS-Syntax in einer externen Datei angeben.
Chl
5

Zweitens die Bayes'sche Aufgabenansicht. Ich möchte nur eine Stimme für MCMCpack abgeben , ein ausgereiftes Paket, das eine Vielzahl von Modellen anbietet. Zum größten Teil ist es auch ziemlich gut dokumentiert.

JMS
quelle
0

Leistung ist der Hauptgrund, warum Benutzer WinBUGS / OpenBUGS / JAGS im Vergleich zu Paketen wie MCMglmm verwenden. Es ist sehr schwer , einen effizienten Gibbs-Sampler in nativem R zu schreiben. Es gibt Pakete, mit denen Sie BUGS-Modelle mit einem R-Skript ausführen können , insbesondere RBUGS und BUGSParallel .

Jeff Hall
quelle
1
MCMCglammist ein schlechtes Beispiel, weil "alle Simulationen in C / C ++ mit der CSparse-Bibliothek für spärliche lineare Systeme durchgeführt werden" (siehe Zusammenfassung ).
Bernd Weiss
1
-1; siehe @ Bernd. Die meisten ausgereiften Pakete verwenden kompilierten Code. Der Hauptgrund ist, dass BUGS et al. Flexibler sind, da sie mehr Modelle aufnehmen können. Dies kann zwar zu einer effizienteren Berechnung führen, da ein R-Paket - selbst mit kompiliertem Code - allgemeiner sein muss, dies jedoch möglicherweise nicht.
JMS
1
MCMCpack verwendet kompilierten C / C ++ - Code, der für die jeweilige Aufgabe optimiert ist, und ist daher schneller als die Ausführung eines allgemeinen Pakets wie JAGS (für eine bestimmte Aufgabe).
Wayne