馬氏距離是一種用于測量兩個隨機變量間的關聯性的距離度量方法。Python中SciPy庫提供了馬氏距離的計算方式,具體實現如下所示:
import numpy as np from scipy.spatial.distance import mahalanobis #定義兩個隨機變量 x = np.array([1,2,3,4,5]) y = np.array([2,4,6,8,10]) #計算協方差矩陣 cov_matrix = np.cov(x, y) #計算馬氏距離 mah_dist = mahalanobis(x, y, cov_matrix) print("馬氏距離為:", mah_dist)
在以上代碼中,我們首先導入了numpy和SciPy庫,然后定義了兩個隨機變量x和y。接著我們通過np.cov()函數計算了x和y兩個隨機變量的協方差矩陣,該矩陣即為馬氏距離計算的重要參數之一。
最后我們通過SciPy庫中的mahalanobis()函數,傳入x、y和協方差矩陣計算得到了馬氏距離,最終輸出。