การทดสอบสมมติฐาน: นักว่ายน้ำว่ายช้าลงหรือไม่?
ต่อไปเราจะทดสอบสมมติฐานหลักที่ว่าเวลาต่อช่วง (split time) ของนักว่ายน้ำไม่มีความสัมพันธ์กับระยะทางที่ว่ายไปแล้วเลย โดยจะใช้ค่าสัมประสิทธิ์สหสัมพันธ์เพียร์สัน (คำนวณด้วย dcst.pearson_r()) เป็น test statistic
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
กรณีศึกษาด้านการคิดเชิงสถิติ
คำแนะนำการฝึกหัด
- คำนวณค่าสัมประสิทธิ์สหสัมพันธ์เพียร์สันที่สังเกตได้ และเก็บค่าไว้ในตัวแปร
rho - ใช้
np.empty()เพื่อสร้างอาร์เรย์สำหรับเก็บ permutation replicates ของค่าสัมประสิทธิ์สหสัมพันธ์เพียร์สันจำนวน 10,000 ครั้ง โดยตั้งชื่อว่าperm_reps_rho - เขียนลูป
forเพื่อ:- สุ่มสลับอาร์เรย์ split number โดยใช้
np.random.permutation()และตั้งชื่อว่าscrambled_split_number - คำนวณค่าสัมประสิทธิ์สหสัมพันธ์เพียร์สันระหว่างอาร์เรย์ split number ที่สุ่มสลับแล้วกับค่าเฉลี่ย split time แล้วเก็บผลลัพธ์ไว้ใน
perm_reps_rho
- สุ่มสลับอาร์เรย์ split number โดยใช้
- คำนวณค่า p-value และแสดงผลบนหน้าจอ โดยนิยามว่า "รุนแรงอย่างน้อยเท่ากับที่สังเกตได้" หมายความว่าค่าสัมประสิทธิ์สหสัมพันธ์เพียร์สันมีค่ามากกว่าหรือเท่ากับค่าที่สังเกตได้
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Observed correlation
rho = ____
# Initialize permutation reps
perm_reps_rho = ____
# Make permutation reps
for i in range(10000):
# Scramble the split number array
scrambled_split_number = ____
# Compute the Pearson correlation coefficient
____[i] = ____
# Compute and print p-value
p_val = ____(____ >= ____) / ____
print('p =', p_val)