Zacznij terazZacznij za darmo

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

Zobacz kurs

Instrukcje do ćwiczenia

  • Przypisz liczbę leczonych i wyleczonych pacjentów odpowiednio do zmiennych num_patients_treated i num_patients_cured.
  • Użyj odpowiedniej funkcji biblioteki numpy, aby pobrać próbki z rozkładu a posteriori, i przypisz wynik do zmiennej posterior_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()
Edytuj i uruchom kod