이번에는 Python마할라노비스 거리 구현 방법과, 파이썬에서 마할라노비스 거리 알고리즘을 구현하기 위한 주의사항에 대해 알려드리겠습니다. 실제 사례를 살펴보겠습니다.
이 문서의 예에서는 Python으로 구현된 Mahalanobis 거리 알고리즘 계산을 설명합니다. 참고용으로 모든 사람과 공유하세요. 세부 사항은 다음과 같습니다.
Mahalanobis 거리 소스 코드를 구현하기 위해 함수를 작성하고
python을 호출했습니다.
# encoding: utf-8 from future import pision import sys reload(sys) sys.setdefaultencoding('utf-8') import numpy as np def mashi_distance(x,y): print x print y #马氏距离要求样本数要大于维数,否则无法求协方差矩阵 #此处进行转置,表示10个样本,每个样本2维 X=np.vstack([x,y]) print X XT=X.T print XT #方法一:根据公式求解 S=np.cov(X) #两个维度之间协方差矩阵 SI = np.linalg.inv(S) #协方差矩阵的逆矩阵 #马氏距离计算两个样本之间的距离,此处共有4个样本,两两组合,共有6个距离。 n=XT.shape[0] d1=[] for i in range(0,n): for j in range(i+1,n): delta=XT[i]-XT[j] d=np.sqrt(np.dot(np.dot(delta,SI),delta.T)) print d d1.append(d) if name == 'main': # 第一列 x = [3, 5, 2, 8] # 第二列 y = [4, 6, 2, 4] mashi_distance(x,y)
실행 결과:
믿습니다. 당신은 이 기사의 사례를 읽었습니다. 더 흥미로운 정보를 보려면 PHP 중국어 웹사이트의 다른 관련 기사를 주목하세요!
추천 도서:
위 내용은 Python에서 Mahalanobis 거리를 구현하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!