Hodnota b pro oblast Parkfield
ECDF je skvělý nástroj pro odhalení poklesu četnosti dat, jak jsi mohl/a vidět u magnitud pod 1. Protože zemětřesení s magnitudou nad 3 je dostatek, můžeš jako práh úplnosti použít mt = 3. S tímto prahem vypočítej hodnotu b pro oblast Parkfield v období 1950–2016 spolu s 95% intervalem spolehlivosti. Výsledky vypiš na obrazovku. Proměnná mags se všemi magnitudami je dostupná v tvém jmenném prostoru.
Přelož přes graf teoretickou exponenciální CDF, aby ses ověřil/a, zda oblast Parkfield řídí Gutenberg-Richterovým zákonem.
Toto cvičení je součástí kurzu
Případové studie ve statistickém myšlení
Pokyny k cvičení
- Vypočítej hodnotu b a 95% interval spolehlivosti pomocí své funkce
b_value(). Použij 10 000 bootstrap replikátů. - Pomocí
np.random.exponential()vygeneruj 100 000 vzorků z teoretického rozdělení. Střední hodnota tohoto rozdělení jeb/np.log(10)a k vzorkům je třeba přičístmt, aby byl správně ošetřen parametr polohy. Výsledek ulož dom_theor. - Vykresli ECDF proměnné
m_theorjako spojnicový graf. - Vykresli ECDF všech magnitud větších než
mtjako tečky. - Klikni na Odeslat odpověď a zobraz graf a hodnotu b spolu s intervalem spolehlivosti na obrazovce.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# 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))