Simulera dragningar från posteriorn
Du har precis bestämt dig för att använda en Beta(5, 2) som prior för effektivitetsgraden. Du använder också binomialfördelningen för att modellera datan (kom ihåg att bota en sjuk patient räknas som ett "lyckat utfall"). Eftersom betafördelningen är en konjugerad prior för binomialsannolikheten kan du helt enkelt simulera posteriorn!
Du vet att om priorn är \(Beta(a, b)\), så är posteriorn \(Beta(x, y)\), med:
\(x = AntalLyckadeUtfall + a\),
\(y = AntalObservationer - AntalLyckadeUtfall + b\).
Kan du simulera posteriorfördelningen? Kom ihåg att du totalt har data om 22 patienter, varav 19 har botats. numpy och seaborn har importerats åt dig som np respektive sns.
Den här övningen är en del av kursen
Bayesiansk dataanalys i Python
Övningsinstruktioner
- Tilldela antalet behandlade och botade patienter till
num_patients_treatedrespektivenum_patients_cured. - Använd lämplig
numpy-funktion för att sampla från posteriorfördelningen och tilldela resultatet tillposterior_draws. - Rita posteriorfördelningen med lämplig
seaborn-funktion.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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()