計算皮爾森相關係數
如同影片所提到,皮爾森相關係數(Pearson r)通常比共變異數更容易解讀。可以使用 np.corrcoef() 來計算。和 np.cov() 類似,它接受兩個陣列作為引數,並回傳一個 2D 陣列。位置 [0,0] 與 [1,1] 的值必定等於 1(你能想想為什麼嗎?),而我們要的值在 [0,1]。
在這個練習中,你會撰寫一個函式 pearson_r(x, y),它接受兩個陣列並回傳皮爾森相關係數。接著,你會用這個函式來計算 I. versicolor 的花瓣長度與寬度的相關係數。
我們再次附上你在前一題產生的散佈圖,提醒你花瓣寬度與長度是如何相關的。
本練習屬於課程
Statistical Thinking in Python (Part 1)
練習說明
- 定義函式介面
pearson_r(x, y)。- 使用
np.corrcoef()計算x與y的相關係數矩陣(依此順序傳入np.corrcoef())。 - 讓函式回傳該矩陣的
[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