MulaiMulai sekarang secara gratis

Mensimulasikan pengambilan sampel posterior

Anda baru saja memutuskan untuk menggunakan prior Beta(5, 2) untuk laju efektivitas. Anda juga menggunakan distribusi binomial untuk memodelkan data (menyembuhkan pasien sakit adalah "sukses", ingat?). Karena distribusi beta merupakan prior konjugat untuk likelihood binomial, Anda dapat langsung mensimulasikan posterior!

Anda tahu bahwa jika prior adalah \(Beta(a, b)\), maka posterior adalah \(Beta(x, y)\), dengan:

\(x = NumberOfSuccesses + a\),

\(y = NumberOfObservations - NumberOfSuccesses + b\).

Dapatkah Anda mensimulasikan distribusi posterior? Ingat bahwa secara keseluruhan Anda memiliki data 22 pasien, 19 di antaranya telah sembuh. numpy dan seaborn telah diimpor untuk Anda sebagai np dan sns masing-masing.

Latihan ini adalah bagian dari kursus

Analisis Data Bayesian dengan Python

Lihat Kursus

Petunjuk latihan

  • Tetapkan jumlah pasien yang diobati dan yang sembuh ke num_patients_treated dan num_patients_cured.
  • Gunakan fungsi numpy yang sesuai untuk mengambil sampel dari distribusi posterior dan tetapkan hasilnya ke posterior_draws.
  • Plot distribusi posterior menggunakan fungsi seaborn yang sesuai.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

# 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()
Edit dan Jalankan Kode