पोस्टेरियर ड्रॉज़ का सिमुलेशन
आपने अभी-अभी प्रभावशीलता दर के लिए Beta(5, 2) प्रायर चुनने का निर्णय लिया है। आप डेटा को मॉडल करने के लिए बाइनोमियल डिस्ट्रीब्यूशन भी उपयोग कर रहे हैं (बीमार मरीज़ का ठीक होना एक "success" है, याद है?). चूँकि बीटा डिस्ट्रीब्यूशन बाइनोमियल लाइकलीहुड के लिए एक कंजुगेट प्रायर है, आप सीधे पोस्टेरियर को सिमुलेट कर सकते हैं!
आप जानते हैं कि अगर प्रायर \(Beta(a, b)\) है, तो पोस्टेरियर \(Beta(x, y)\) होगा, जहाँ:
\(x = NumberOfSuccesses + a\),
\(y = NumberOfObservations - NumberOfSuccesses + b\).
क्या आप पोस्टेरियर डिस्ट्रीब्यूशन का सिमुलेशन कर सकते हैं? ध्यान रखें कि कुल मिलाकर आपके पास 22 मरीज़ों का डेटा है, जिनमें से 19 ठीक हो चुके हैं। numpy और seaborn आपके लिए क्रमशः np और sns नाम से इम्पोर्ट किए गए हैं.
यह अभ्यास पाठ्यक्रम का हिस्सा है
Python में Bayesian डेटा विश्लेषण
अभ्यास निर्देश
- ट्रीट किए गए और ठीक हुए मरीज़ों की संख्या को क्रमशः
num_patients_treatedऔरnum_patients_curedमें असाइन करें। - पोस्टेरियर डिस्ट्रीब्यूशन से सैंपल लेने के लिए उपयुक्त
numpyफंक्शन का उपयोग करें और परिणामposterior_drawsमें असाइन करें। - उपयुक्त
seabornफंक्शन का उपयोग करके पोस्टेरियर डिस्ट्रीब्यूशन प्लॉट करें.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# 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()