เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

ความสัมพันธ์ระหว่างข้อมูลของลูกนกและพ่อแม่นก

เพื่อหาค่าเชิงปริมาณของความสัมพันธ์ระหว่างความลึกของจะงอยปากของลูกนกและพ่อแม่นก เราต้องการคำนวณค่าสถิติ เช่น Pearson correlation coefficient ระหว่างพ่อแม่นกและลูกนก และเพื่อให้ได้ช่วงความเชื่อมั่น จำเป็นต้องทำ pairs bootstrap

คุณได้เขียนฟังก์ชันไว้แล้ว สำหรับทำ pairs bootstrap เพื่อประมาณค่าพารามิเตอร์จาก linear regression ในแบบฝึกหัดนี้ ให้สร้างฟังก์ชันใหม่ที่มี call signature เป็น draw_bs_pairs(x, y, func, size=1) ซึ่งทำ pairs bootstrap และคำนวณค่าสถิติเดียวจากคู่ตัวอย่างที่กำหนด โดยคำนวณค่าสถิติที่สนใจด้วยการเรียก func(bs_x, bs_y) ในแบบฝึกหัดถัดไป จะใช้ pearson_r เป็นค่าของ func

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

Statistical Thinking in Python (ตอนที่ 2)

ดูคอร์ส

คำแนะนำการฝึกหัด

  • สร้างอาร์เรย์ของดัชนีสำหรับใช้สุ่มตัวอย่าง (จำไว้ว่าในการทำ pairs bootstrap เราจะสุ่มเลือกดัชนีแล้วนำไปดึงคู่ข้อมูล)
  • กำหนดค่าเริ่มต้นให้อาร์เรย์ของ bootstrap replicates โดยต้องเป็นอาร์เรย์หนึ่งมิติที่มีความยาว size
  • เขียน for loop เพื่อดึงตัวอย่าง
  • สุ่มเลือกดัชนีจากอาร์เรย์ดัชนีที่สร้างไว้
  • ดึงค่า x และ y จากอาร์เรย์อินพุตโดยใช้ดัชนีที่เลือก เพื่อสร้าง bootstrap sample
  • ใช้ func คำนวณค่าสถิติที่สนใจจาก bootstrap samples ของ x และ y แล้วเก็บผลลัพธ์ไว้ในอาร์เรย์ของ bootstrap replicates
  • Return อาร์เรย์ของ bootstrap replicates

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

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
แก้ไขและรันโค้ด