Python实现的计算马氏距离算法示例


Posted in Python onApril 03, 2018

本文实例讲述了Python实现的计算马氏距离算法。分享给大家供大家参考,具体如下:

Python实现的计算马氏距离算法示例

我给写成函数调用了

python实现马氏距离源代码:

# encoding: utf-8
from __future__ import division
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)

运行结果:

Python实现的计算马氏距离算法示例

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python使用calendar输出指定年份全年日历的方法
Apr 04 Python
Python 模板引擎的注入问题分析
Jan 01 Python
Python实现FTP上传文件或文件夹实例(递归)
Jan 16 Python
详解如何用OpenCV + Python 实现人脸识别
Oct 20 Python
django定期执行任务(实例讲解)
Nov 03 Python
Python简单生成随机数的方法示例
Mar 31 Python
numpy 进行数组拼接,分别在行和列上合并的实例
May 08 Python
使用Numpy读取CSV文件,并进行行列删除的操作方法
Jul 04 Python
Python+OpenCV图片局部区域像素值处理改进版详解
Jan 23 Python
opencv+python实现鼠标点击图像,输出该点的RGB和HSV值
Jun 02 Python
Python实现拼音转换
Jun 07 Python
Python实现打乒乓小游戏
Sep 25 Python
python2.7无法使用pip的解决方法(安装easy_install)
Apr 03 #Python
快速解决安装python没有scripts文件夹的问题
Apr 03 #Python
Python中将变量按行写入txt文本中的方法
Apr 03 #Python
python使用tensorflow深度学习识别验证码
Apr 03 #Python
使用python获取csv文本的某行或某列数据的实例
Apr 03 #Python
python中实现数组和列表读取一列的方法
Apr 03 #Python
numpy.delete删除一列或多列的方法
Apr 03 #Python
You might like
全国FM电台频率大全 - 9 上海市
2020/03/11 无线电
NOD32 v2.70.32 简体中文封装版 提供下载了
2007/02/27 PHP
sae使用smarty模板的方法
2013/12/17 PHP
php cli换行示例
2014/04/22 PHP
基于jquery的页面划词搜索JS
2010/09/14 Javascript
js 优化次数过多的循环 考虑到性能问题
2011/03/05 Javascript
ASP.NET jQuery 实例14 在ASP.NET form中校验时间范围
2012/02/03 Javascript
JavaScript学习笔记之Cookie对象
2015/01/22 Javascript
js省市联动效果完整实例代码
2015/12/09 Javascript
轮播图组件js代码
2016/08/08 Javascript
jquery 动态增加删除行的简单实例(推荐)
2016/10/12 Javascript
Bootstrap基本样式学习笔记之表单(3)
2016/12/07 Javascript
基于Marquee.js插件实现的跑马灯效果示例
2017/01/25 Javascript
js仿微信公众平台打标签功能
2017/04/08 Javascript
详解angularJs中关于ng-class的三种使用方式说明
2017/06/02 Javascript
Vue表单输入绑定的示例代码
2018/11/01 Javascript
video.js 一个页面同时播放多个视频的实例代码
2018/11/27 Javascript
浅谈vue生命周期共有几个阶段?分别是什么?
2020/08/07 Javascript
mustache.js实现首页元件动态渲染的示例代码
2020/12/28 Javascript
举例讲解Python的Tornado框架实现数据可视化的教程
2015/05/02 Python
Python 3.x 新特性及10大变化
2015/06/12 Python
windows上安装Anaconda和python的教程详解
2017/03/28 Python
Python2随机数列生成器简单实例
2017/09/04 Python
浅谈用Python实现一个大数据搜索引擎
2017/11/28 Python
如何在Django中使用聚合的实现示例
2020/03/23 Python
使用CSS3的appearance属性改变任何元素的浏览器默认风格
2012/12/24 HTML / CSS
HTML5标签使用方法详解
2015/11/27 HTML / CSS
Lookfantastic挪威官网:英国知名美妆购物网站
2017/07/26 全球购物
医学专业毕业生个人求职信
2013/12/25 职场文书
会计专业应届生自荐信
2014/02/07 职场文书
《母亲的恩情》教学反思
2014/02/13 职场文书
领导干部遵守党的政治纪律情况思想汇报
2014/09/14 职场文书
依法行政工作汇报材料
2014/10/28 职场文书
少先队辅导员事迹材料
2014/12/24 职场文书
KTV员工管理制度
2015/08/06 职场文书
python实现socket简单通信的示例代码
2021/04/13 Python