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元组操作实例解析
Sep 23 Python
详解在Python程序中解析并修改XML内容的方法
Nov 16 Python
Python selenium抓取微博内容的示例代码
May 17 Python
python实现桌面壁纸切换功能
Jan 21 Python
对python 通过ssh访问数据库的实例详解
Feb 19 Python
python实现二维数组的对角线遍历
Mar 02 Python
python retrying模块的使用方法详解
Sep 25 Python
Pytorch之parameters的使用
Dec 31 Python
python计算导数并绘图的实例
Feb 29 Python
python GUI库图形界面开发之PyQt5表单布局控件QFormLayout详细使用方法与实例
Mar 06 Python
python argparse传入布尔参数false不生效的解决
Apr 20 Python
python利用蒙版抠图(使用PIL.Image和cv2)输出透明背景图
Aug 04 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
德劲1107的电路分析与打磨
2021/03/02 无线电
PHP网页游戏学习之Xnova(ogame)源码解读(九)
2014/06/24 PHP
编写PHP脚本清除WordPress头部冗余代码的方法讲解
2016/03/01 PHP
简单实用的PHP文本缓存类实例
2019/03/22 PHP
Laravel Eloquent分表方法并使用模型关联的实现
2019/11/25 PHP
学习ExtJS fit布局使用说明
2009/10/08 Javascript
基于jquery ajax 用户无刷新登录方法详解
2012/04/28 Javascript
js 有框架页面跳转(target)三种情况下的应用
2013/04/09 Javascript
JavaScript中判断整字类型最简洁的实现方法
2014/11/08 Javascript
分享28款免费实用的 JQuery 图片和内容滑块插件
2014/12/15 Javascript
javascript单例模式的简单实现方法
2015/07/25 Javascript
使用jQuery.form.js/springmvc框架实现文件上传功能
2016/05/12 Javascript
jQuery插件ImgAreaSelect实现头像上传预览和裁剪功能实例讲解一
2017/05/26 jQuery
zTree获取当前节点的下一级子节点数实例
2017/09/05 Javascript
ionic3实战教程之随机布局瀑布流的实现方法
2017/12/28 Javascript
借助云开发实现小程序短信验证码的发送
2020/01/06 Javascript
Ant Design Vue 添加区分中英文的长度校验功能
2020/01/21 Javascript
vue webpack build资源相对路径的问题及解决方法
2020/06/04 Javascript
Vue左滑组件slider使用详解
2020/08/21 Javascript
[01:09:50]VP vs Pain 2018国际邀请赛小组赛BO2 第二场
2018/08/20 DOTA
在Python3中使用asyncio库进行快速数据抓取的教程
2015/04/02 Python
Python multiprocess pool模块报错pickling error问题解决方法分析
2019/03/20 Python
python读写csv文件的方法
2019/08/13 Python
Python 文件操作之读取文件(read),文件指针与写入文件(write),文件打开方式示例
2019/09/29 Python
Python全栈之列表数据类型详解
2019/10/01 Python
python3.7 openpyxl 删除指定一列或者一行的代码
2019/10/08 Python
python开根号实例讲解
2020/08/30 Python
如何通过python检查文件是否被占用
2020/12/18 Python
CSS3控制HTML元素动画效果
2014/02/08 HTML / CSS
流行文化收藏品:Sideshow(DC漫画,星球大战,漫威)
2019/03/17 全球购物
Farfetch巴西官网:奢侈品牌时尚购物平台
2020/10/19 全球购物
教师党员一句话承诺
2014/03/28 职场文书
安全教育主题班会教案
2015/08/12 职场文书
养成教育工作总结
2015/08/13 职场文书
2016公司新年问候语
2015/11/11 职场文书
Python Matplotlib绘制条形图的全过程
2021/10/24 Python