Kom igångKom igång gratis

b-värdet för Parkfield

ECDF är effektiv för att synliggöra avtagande frekvenser, vilket du kunde se under magnitud 1. Eftersom det finns gott om jordbävningar över magnitud 3 kan du använda mt = 3 som fullständighetströskel. Med denna tröskel beräknar du b-värdet för Parkfieldregionen från 1950 till 2016, tillsammans med ett 95-procentigt konfidensintervall. Skriv ut resultaten på skärmen. Variabeln mags med alla magnituder finns i ditt namnområde.

Lägg till den teoretiska exponentiella CDF:en som ett lager för att kontrollera att Parkfieldregionen följer Gutenberg-Richters lag.

Den här övningen är en del av kursen

Fallstudier i statistiskt tänkande

Visa kurs

Övningsinstruktioner

  • Beräkna b-värdet och det 95-procentiga konfidensintervallet med hjälp av din funktion b_value(). Använd 10 000 bootstrap-replikat.
  • Använd np.random.exponential() för att dra 100 000 sampel från den teoretiska fördelningen. Medelvärdet för fördelningen är b/np.log(10), och du behöver addera mt till dina sampel för att hantera platsparametern korrekt. Lagra resultatet i m_theor.
  • Rita ECDF för m_theor som en linje.
  • Rita ECDF för alla magnituder över mt som punkter.
  • Klicka på Skicka in svar för att visa grafen och skriva ut b-värdet och konfidensintervallet på skärmen.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# 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))
Redigera och kör kod