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在windows命令行下输出彩色文字的方法
Mar 19 Python
python中global用法实例分析
Apr 30 Python
简单讲解Python中的闭包
Aug 11 Python
Python的Socket编程过程中实现UDP端口复用的实例分享
Mar 19 Python
Python3 queue队列模块详细介绍
Jan 05 Python
python处理“
Jun 10 Python
pyqt弹出新对话框,以及关闭对话框获取数据的实例
Jun 18 Python
PyCharm中代码字体大小调整方法
Jul 29 Python
对python中list的五种查找方法说明
Jul 13 Python
python实现自动打卡的示例代码
Oct 10 Python
Python 把两层列表展开平铺成一层(5种实现方式)
Apr 07 Python
python 制作一个gui界面的翻译工具
May 14 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
PHPMailer使用教程(PHPMailer发送邮件实例分析)
2012/12/06 PHP
本地机apache配置基于域名的虚拟主机详解
2013/08/10 PHP
win7计划任务定时执行PHP脚本设置图解
2014/05/09 PHP
PHP自带函数给数字或字符串自动补齐位数
2014/07/29 PHP
php使用Jpgraph绘制柱形图的方法
2015/06/10 PHP
PHP异常类及异常处理操作实例详解
2018/12/19 PHP
js 学习笔记(三)
2009/12/29 Javascript
JavaScript中访问节点对象的方法有哪些如何使用
2013/09/24 Javascript
JavaScript中检测变量是否存在遇到的一些问题
2013/11/11 Javascript
javascript实现html页面之间参数传递的四种方法实例分析
2015/12/15 Javascript
JavaScript判断图片是否已经加载完毕的方法汇总
2016/02/05 Javascript
vue2笔记 — vue-router路由懒加载的实现
2017/03/03 Javascript
angular.JS实现网页禁用调试、复制和剪切
2017/03/31 Javascript
微信小程序实现订单倒计时
2020/11/01 Javascript
关于vue项目中搜索节流的实现代码
2019/09/17 Javascript
在Express中提供静态文件的实现方法
2019/10/17 Javascript
JavaScript设计模式之门面模式原理与实现方法分析
2020/03/09 Javascript
封装Vue Element的table表格组件的示例详解
2020/08/19 Javascript
Python中实现对list做减法操作介绍
2015/01/09 Python
详细介绍Python函数中的默认参数
2015/03/30 Python
Python进阶学习之特殊方法实例详析
2017/12/01 Python
python生成器,可迭代对象,迭代器区别和联系
2018/02/04 Python
对python中raw_input()和input()的用法详解
2018/04/22 Python
python求质数的3种方法
2018/09/28 Python
python将txt文档每行内容循环插入数据库的方法
2018/12/28 Python
python开发准备工作之配置虚拟环境(非常重要)
2019/02/11 Python
python列表每个元素同增同减和列表元素去空格的实例
2019/07/20 Python
python文件路径操作方法总结
2020/12/21 Python
原装进口全世界:天猫国际
2016/08/03 全球购物
全球性的在线商店:Vogca
2019/05/10 全球购物
生物技术专业毕业生求职信范文
2013/12/14 职场文书
教师中国梦演讲稿
2014/04/23 职场文书
个人委托书怎么写
2014/09/17 职场文书
2014领导班子专题民主生活会对照检查材料思想汇报
2014/09/23 职场文书
2016年国培研修日志
2015/11/13 职场文书
个人工作失误的保证书怎么写?
2019/06/21 职场文书