<- seq( from=0 , to=1 , length.out=1000 ) # Gitterwerte
p_grid
<- rep( 1 , 1000 ) # Priori-Gewichte
prior
set.seed(42)
<- dbinom( 6 , size=9 , prob=p_grid )
likelihood
<- likelihood * prior
unstandardisierte_posterior
<- unstandardisierte_posterior / sum(unstandardisierte_posterior) posterior
ReThink3m4
bayes
ppv
probability
string
Aufgabe
Nehmen wir an, wir haben 8 (Wasser-)“Treffer” (\(W=8\)) bei 15 Würfen (\(N=15\)) erhalten (wieder im Globusversuch).
Berechnen Sie auf Basis dieser Posteriori-Verteilung (8 Treffer bei 15 Würfen) die Wahrscheinlichkeit für 6 Wasser bei 9 Würfen (\(W=6, N=9\)).
Hinweise:
- Berechnen Sie eine Bayes-Box (Gittermethode).
- Verwenden Sie 1000 Gitterwerte.
- Fixieren Sie die Zufallszahlen mit dem Startwert 42, d.h.
set.seed(42)
. - Gehen Sie von einem gleichverteilten Prior aus.
Quelle: McElreath, R. (2020). Statistical rethinking: A Bayesian course with examples in R and Stan (2. Aufl.). Taylor and Francis, CRC Press.
Lösung
Erstellen wir zuerst wieder die Posteriori-Verteilung für den Globusversuch.
Dann ziehen wir unsere Stichproben daraus:
# um die Zufallszahlen festzulegen, damit alle die gleichen Zufallswerte bekommen:
set.seed(42)
# Stichproben ziehen aus der Posteriori-Verteilung
<-
samples tibble(
p = sample( p_grid , prob=posterior, size=1e4, replace=TRUE))
Jetzt erstellen wir die PPV für einen anderen Versuch, nämlich mit 9 Zügen:
<-
PPV %>%
samples mutate(anzahl_wasser2 = rbinom(1e4, size = 9, prob = p))
Schließlich zählen wir, wie oft 6 Treffer beobachtet werden:
%>%
PPV count(anzahl_wasser2 == 6)
# A tibble: 2 × 2
`anzahl_wasser2 == 6` n
<lgl> <int>
1 FALSE 7972
2 TRUE 2028
Categories:
- bayes
- ppv
- probability
- string