Calcolare il valore b
Il valore di b è una metrica comune per descrivere la sismicità di una regione. È facile immaginare che tu voglia calcolarlo spesso quando lavori con dati sui terremoti. Per attività ricorrenti come questa, la soluzione migliore è scrivere una funzione! Quindi, scrivi una funzione con firma b_value(mags, mt, perc=[2.5, 97.5], n_reps=None) che restituisca il valore di b e (facoltativamente, se n_reps non è None) il suo intervallo di confidenza per un insieme di magnitudini, mags. La soglia di completezza è data da mt. L'argomento keyword perc fornisce i percentili per i limiti inferiore e superiore dell'intervallo di confidenza, e n_reps è il numero di repliche bootstrap da usare per calcolare l'intervallo di confidenza.
Questo esercizio fa parte del corso
Casi di studio nel pensiero statistico
Istruzioni dell'esercizio
- Definisci una funzione con firma
b_value(mags, mt, perc=[2.5, 97.5], n_reps=None)che faccia quanto segue:- Seleziona da
magsle magnitudini maggiori o uguali alla soglia di completezzamtusando l'indicizzazione booleana. Salva il risultato nella variabilem. - Calcola la migliore stima del valore di b. Ricorda, la migliore stima per il valore di b è b = (m - mt)·ln(10). Salva il risultato nella variabile
b. - se
n_repsnon è None, esegui quanto segue.- Estrai
n_repsrepliche bootstrap della media dim. Salva il risultato nella variabilem_bs_reps. - Converte le repliche bootstrap della media di
min repliche del valore di b. Salva il risultato inb_bs_reps. - Calcola l'intervallo di confidenza dalle repliche bootstrap del valore di b. Salva il risultato in
conf_int.
- Estrai
- Restituisci
beconf_int, oppure solobsen_repsèNone.
- Seleziona da
esercizio interattivo pratico
Prova questo esercizio completando questo codice di esempio.
____ ____:
"""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