開始使用免費開始

子代與親代資料的相關性

為了量化子代與親代喙部深度之間的相關性,我們想要計算一些統計量,例如父母與子代之間的 Pearson 相關係數。要為此取得信賴區間,我們需要進行成對(pairs)拔靴法。

你先前已經寫過一個函式,能以成對拔靴法取得由線性迴歸推導出的參數估計。此練習中,你的任務是撰寫一個新的函式,呼叫介面為 draw_bs_pairs(x, y, func, size=1),它會執行成對拔靴法,並在成對樣本上計算單一統計量。所需的統計量透過呼叫 func(bs_x, bs_y) 來計算。下一個練習中,你會將 pearson_r 作為 func

本練習屬於課程

Statistical Thinking in Python(第 2 部分)

檢視課程

練習說明

  • 建立一個要抽樣的索引陣列。(記住,成對拔靴法是隨機選索引,並用那些索引取得成對資料。)
  • 初始化拔靴複本陣列。它應該是一個長度為 size 的一維陣列。
  • 寫一個 for 迴圈來抽樣。
  • 從你先前建立的索引陣列中隨機選擇索引。
  • 使用剛選的索引,從輸入陣列中擷取 xy 的值,產生成對的拔靴樣本。
  • 使用 funcxy 的拔靴樣本計算目標統計量,並將結果存入你的拔靴複本陣列。
  • 回傳拔靴複本陣列。

動手互動練習

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

def draw_bs_pairs(x, y, func, size=1):
    """Perform pairs bootstrap for a single statistic."""

    # Set up array of indices to sample from: inds
    inds = ____

    # Initialize replicates: bs_replicates
    bs_replicates = ____

    # Generate replicates
    for i in range(size):
        bs_inds = ____
        bs_x, bs_y = ____
        bs_replicates[i] = ____

    return bs_replicates
編輯並執行程式碼