開始使用免費開始

計算 b-value

b-value 是衡量某地區地震活動度的常見指標。當你處理地震資料時,很可能會經常需要計算它。對於這類會反覆進行的工作,最好的方式就是寫一個函式!請撰寫一個簽名為 b_value(mags, mt, perc=[2.5, 97.5], n_reps=None) 的函式,傳回一組震級 magsb-value,並在(選擇性地,若 n_reps 不是 None)同時傳回其信賴區間。完備性門檻由 mt 給定。perc 關鍵字引數指定信賴區間下、上界的百分位數,而 n_reps 是用來計算信賴區間的自助法重抽樣次數。

本練習屬於課程

統計思維個案研究

檢視課程

練習說明

  • 定義一個簽名為 b_value(mags, mt, perc=[2.5, 97.5], n_reps=None) 的函式,需完成下列事項:
    • 使用布林索引,由 mags 擷取大於等於完備性門檻 mt 的震級。將結果存入變數 m
    • 計算 b-value 的最佳估計值。記住,b-value 的最佳估計為 b = (m - mt)·ln(10)。將結果存入變數 b
    • 如果 n_reps 不是 None,請執行下列步驟。
      • 抽取 m 的平均數之 n_reps 個自助法重抽樣複本。將結果存入變數 m_bs_reps
      • m 的平均數之自助法重抽樣複本轉換為 b-value 的重抽樣複本。將結果存入 b_bs_reps
      • b-value 的自助法重抽樣複本計算信賴區間。將結果存入 conf_int
    • 回傳 bconf_int,若 n_repsNone 則只回傳 b

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

____ ____:
    """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
編輯並執行程式碼