上一篇經過公式本身寫了一個計算兩組數據的皮爾遜積矩相關係數(Pearson's r)的方法,但np已經提供了一個用於計算皮爾遜積矩相關係數(Pearson's r)的方法 np.corrcoef() :數組
a = pd.Series([1,2,3,4,5,6,7,8,9,10]) b = pd.Series([2,4,1,5,1,3,6,2,7,0]) c = pd.Series([0,3,2,1,4,7,1,9,6,2]) x = np.vstack((a,b,c)) r = np.corrcoef(x) print(r)
[[1. 0.10233683 0.47840854] [0.10233683 1. 0.0242104 ] [0.47840854 0.0242104 1. ]]
須要注意的是, np.corrcoef() 接受的參數是一個矩陣,返回的結果也是一個矩陣spa
以上面的代碼爲例: a,b,c 分別爲第 0,1,2 組數組,返回的矩陣結果 r[i][j] 分別爲第 i 組數據和第 j 組數據的皮爾遜積矩相關係數:code
r[0][0] 計算的是第 [0] 組數組和第 [0] 組數據的相關係數,也就是 a 和 a,結果固然是1.blog
r[0][1] 計算的是第 [0] 組數組和第 [1] 組數據的相關係數,也就是 a和 b,結果是0.10233683ip
r[2][0] 計算的是第 [2] 組數組和第 [0] 組數據的相關係數,也就是 c和 a,結果是0.47840854ci