Symulowanie próbek z rozkładu a posteriori
Właśnie zdecydowałeś(-aś) się użyć rozkładu Beta(5, 2) jako apriorycznego dla wskaźnika skuteczności leku. Do modelowania danych stosujesz rozkład dwumianowy (pamiętaj, że wyleczenie chorego pacjenta to „sukces"). Ponieważ rozkład beta jest sprzężonym rozkładem apriorycznym dla funkcji wiarygodności opartej na rozkładzie dwumianowym, możesz po prostu zasymulować rozkład a posteriori!
Jeśli rozkład aprioryczny to \(Beta(a, b)\), to rozkład a posteriori to \(Beta(x, y)\), gdzie:
\(x = LiczbaSuccesów + a\),
\(y = LiczbaObserwacji - LiczbaSuccesów + b\).
Czy potrafisz zasymulować rozkład a posteriori? Przypomnij sobie, że łącznie masz dane dotyczące 22 pacjentów, z których 19 zostało wyleczonych. Biblioteki numpy i seaborn zostały już zaimportowane jako np i sns.
To ćwiczenie jest częścią kursu
Bayesowska analiza danych w Pythonie
Instrukcje do ćwiczenia
- Przypisz liczbę leczonych i wyleczonych pacjentów odpowiednio do zmiennych
num_patients_treatedinum_patients_cured. - Użyj odpowiedniej funkcji biblioteki
numpy, aby pobrać próbki z rozkładu a posteriori, i przypisz wynik do zmiennejposterior_draws. - Wykreśl rozkład a posteriori, używając odpowiedniej funkcji biblioteki
seaborn.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Define the number of patients treated and cured
num_patients_treated = ____
num_patients_cured = ____
# Simulate 10000 draws from the posterior distribuition
posterior_draws = ____(____ + ____, ____ - ____ + ____, 10000)
# Plot the posterior distribution
____(____, shade=True)
plt.show()