पार्कफ़ील्ड के लिए b-वैल्यू
ECDF रोल-ऑफ को उजागर करने में प्रभावी है, जैसा कि आपने magnitude 1 से नीचे देखा. क्योंकि magnitude 3 से ऊपर भूकंप पर्याप्त हैं, आप अपनी completeness threshold के रूप में mt = 3 ले सकते हैं. इस completeness threshold के साथ, 1950 से 2016 तक पार्कफ़ील्ड क्षेत्र के लिए b-वैल्यू और 95% confidence interval निकालिए. नतीजे स्क्रीन पर प्रिंट कीजिए. सभी magnitudes वाला वैरिएबल mags आपके namespace में उपलब्ध है.
थ्योरिटिकल Exponential CDF को ओवरले करके जाँचिए कि पार्कफ़ील्ड क्षेत्र Gutenberg-Richter Law का पालन करता है या नहीं.
यह अभ्यास पाठ्यक्रम का हिस्सा है
Statistical Thinking के केस स्टडीज़
अभ्यास निर्देश
- अपनी
b_value()फंक्शन का उपयोग करके b-वैल्यू और 95% confidence interval निकालिए. 10,000 bootstrap replicates लें. np.random.exponential()का उपयोग करके थ्योरिटिकल डिस्ट्रीब्यूशन से 100,000 सैंपल ड्रॉ कीजिए. इस डिस्ट्रीब्यूशन का meanb/np.log(10)है, और लोकेशन पैरामीटर को ठीक से संभालने के लिए आपको अपने सैंपल्स मेंmtजोड़ना होगा. परिणामm_theorमें स्टोर करें.m_theorकी ECDF एक लाइन के रूप में प्लॉट करें.mtसे ऊपर की सभी magnitudes की ECDF डॉट्स के रूप में प्लॉट करें.- प्लॉट दिखाने और b-वैल्यू व confidence interval स्क्रीन पर प्रिंट करने के लिए 'Submit Answer' दबाएँ.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# Compute b-value and 95% confidence interval
b, conf_int = ____(____, ____, ____=[____, ____], n_reps=____)
# Generate samples to for theoretical ECDF
m_theor = ____(____, size=____) + ____
# Plot the theoretical CDF
_ = ____(*____)
# Plot the ECDF (slicing mags >= mt)
_ = plt.plot(*____(____[____ >= ____]), marker='.', linestyle='none')
# Pretty up and show the plot
_ = plt.xlabel('magnitude')
_ = plt.ylabel('ECDF')
_ = plt.xlim(2.8, 6.2)
plt.show()
# Report the results
print("""
b-value: {0:.2f}
95% conf int: [{1:.2f}, {2:.2f}]""".format(b, *conf_int))