Kom igångKom igång gratis

Beräkning av b-värdet

b-värdet är ett vanligt mått på seismiciteten i ett område. När man arbetar med jordbävningsdata vill man ofta beräkna det. För återkommande uppgifter av det här slaget lönar det sig att skriva en funktion! Skriv därför en funktion med signaturen b_value(mags, mt, perc=[2.5, 97.5], n_reps=None) som returnerar b-värdet och (valfritt, om n_reps inte är None) dess konfidensintervall för en uppsättning magnituder, mags. Fullständighetströskelns värde ges av mt. Nyckelordsargumentet perc anger percentilerna för konfidensintervallets nedre och övre gränser, och n_reps är antalet bootstrapreplikat som används vid beräkningen av konfidensintervallet.

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

Fallstudier i statistiskt tänkande

Visa kurs

Övningsinstruktioner

  • Definiera en funktion med signaturen b_value(mags, mt, perc=[2.5, 97.5], n_reps=None) som gör följande:
    • Plocka ut magnituder från mags som är lika med eller överstiger fullständighetströskeln mt med hjälp av boolesk indexering. Lagra resultatet i variabeln m.
    • Beräkna den bästa skattningen av b-värdet. Kom ihåg att den bästa skattningen av b-värdet är b = (m - mt)·ln(10). Lagra resultatet i variabeln b.
    • Om n_reps inte är None, gör följande.
      • Dra n_reps bootstrapreplikat av medelvärdet av m. Lagra resultatet i variabeln m_bs_reps.
      • Konvertera bootstrapreplikaten av medelvärdet av m till replikat av b-värdet. Lagra resultatet i b_bs_reps.
      • Beräkna konfidensintervallet från bootstrapreplikaten av b-värdet. Lagra resultatet i conf_int.
    • Returnera b och conf_int, eller enbart b om n_reps är None.

Interaktiv övning med praktiskt arbete

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

____ ____:
    """Compute the b-value and optionally its confidence interval."""
    # Extract magnitudes above completeness threshold: m
    m = ____[____ >= ____]

    # Compute b-value: b
    b = ____

    # Draw bootstrap replicates
    if n_reps is None:
        return b
    else:
        m_bs_reps = ____

        # Compute b-value from replicates: b_bs_reps
        b_bs_reps = (____ - ____) * ____

        # Compute confidence interval: conf_int
        conf_int = ____
    
        return b, conf_int
Redigera och kör kod