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

การคำนวณค่าสัมประสิทธิ์สหสัมพันธ์เพียร์สัน

ดังที่กล่าวไว้ในวิดีโอ ค่าสัมประสิทธิ์สหสัมพันธ์เพียร์สัน หรือที่เรียกว่า Pearson r มักตีความได้ง่ายกว่าค่าความแปรปรวนร่วม โดยคำนวณด้วยฟังก์ชัน np.corrcoef() เช่นเดียวกับ np.cov() ฟังก์ชันนี้รับอาร์เรย์สองชุดเป็นอาร์กิวเมนต์และคืนค่าเป็นอาร์เรย์ 2 มิติ โดยที่ [0,0] และ [1,1] จะเท่ากับ 1 เสมอ (ลองคิดดูว่าเพราะอะไร) และค่าที่เราต้องการคือ [0,1]

ในแบบฝึกหัดนี้ จะได้เขียนฟังก์ชัน pearson_r(x, y) ที่รับอาร์เรย์สองชุดแล้วคืนค่าสัมประสิทธิ์สหสัมพันธ์เพียร์สัน จากนั้นนำฟังก์ชันนี้ไปคำนวณค่าสหสัมพันธ์ระหว่างความยาวและความกว้างของกลีบดอกของ I. versicolor

เราแนบ scatter plot ที่สร้างในแบบฝึกหัดก่อนหน้าเพื่อช่วยให้เห็นภาพความสัมพันธ์ระหว่างความกว้างและความยาวของกลีบดอก

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

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

ดูคอร์ส

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

  • กำหนดฟังก์ชันที่มีลายเซ็น pearson_r(x, y)
    • ใช้ np.corrcoef() คำนวณเมทริกซ์สหสัมพันธ์ของ x และ y (ส่งตามลำดับนั้น)
    • ฟังก์ชันคืนค่า [0,1] ของเมทริกซ์สหสัมพันธ์
  • คำนวณค่าสหสัมพันธ์เพียร์สันระหว่างข้อมูลในอาร์เรย์ versicolor_petal_length และ versicolor_petal_width แล้วกำหนดผลลัพธ์ให้กับ r
  • แสดงผลลัพธ์

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

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

def ____(____, ____):
    """Compute Pearson correlation coefficient between two arrays."""
    # Compute correlation matrix: corr_mat


    # Return entry [0,1]
    return corr_mat[0,1]

# Compute Pearson correlation coefficient for I. versicolor: r


# Print the result
แก้ไขและรันโค้ด