Calcul de la valeur b
La valeur de b est une mesure courante de la sismicité d'une région. Vous aurez souvent à la calculer quand vous travaillez avec des données de séismes. Pour ce genre de tâche répétée, le mieux est d'écrire une fonction ! Écrivez donc une fonction ayant pour signature b_value(mags, mt, perc=[2.5, 97.5], n_reps=None) qui retourne la valeur de b et, de façon optionnelle (si n_reps n'est pas None), son intervalle de confiance pour un ensemble de magnitudes mags. Le seuil de complétude est donné par mt. L'argument nommé perc fournit les centiles pour les bornes inférieure et supérieure de l'intervalle de confiance, et n_reps est le nombre de répliques bootstrap à utiliser pour calculer l'intervalle de confiance.
Cette activité fait partie du cours
Études de cas en pensée statistique
Instructions de l’exercice
- Définissez une fonction avec la signature
b_value(mags, mt, perc=[2.5, 97.5], n_reps=None)qui fait ce qui suit :- Sélectionnez, par indexation booléenne, les magnitudes de
magsau seuil de complétudemtet au‑dessus. Conservez le résultat dans la variablem. - Calculez la meilleure estimation de la valeur de b. Rappel : la meilleure estimation de la valeur de b est b = (m - mt)·ln(10). Conservez le résultat dans la variable
b. - si
n_repsn'est pas None, procédez comme suit.- Tirez
n_repsrépliques bootstrap de la moyenne dem. Conservez le résultat dans la variablem_bs_reps. - Convertissez les répliques bootstrap de la moyenne de
men répliques de la valeur de b. Conservez le résultat dansb_bs_reps. - Calculez l'intervalle de confiance à partir des répliques bootstrap de la valeur de b. Conservez le résultat dans
conf_int.
- Tirez
- Retournez
betconf_int, ou seulementbsin_repsestNone.
- Sélectionnez, par indexation booléenne, les magnitudes de
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
____ ____:
"""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