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 Sleep休眠函数使用简单实例
Feb 02 Python
Python基础入门之seed()方法的使用
May 15 Python
Python中的__slots__示例详解
Jul 06 Python
virtualenv实现多个版本Python共存
Aug 21 Python
利用python如何处理百万条数据(适用java新手)
Jun 06 Python
Python实现的读取文件内容并写入其他文件操作示例
Apr 09 Python
Python3.5模块的定义、导入、优化操作图文详解
Apr 27 Python
Pyqt清空某一个QTreeewidgetItem下的所有分支方法
Jun 17 Python
python动态进度条的实现代码
Jul 03 Python
python super()函数的基本使用
Sep 10 Python
python如何实现递归转非递归
Feb 25 Python
Pytorch 使用tensor特定条件判断索引
Apr 08 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
PHP中addcslashes与stripcslashes函数用法分析
2016/01/07 PHP
PHP简单获取多个checkbox值的方法
2016/06/13 PHP
yii2的restful api路由实例详解
2019/05/14 PHP
phpStudy vscode 搭建debug调试的教程详解
2020/07/28 PHP
jQuery 使用手册(五)
2009/09/23 Javascript
javascript下判断一个对象是否具有指定名称的属性的的代码
2010/01/11 Javascript
ie6下png图片背景不透明的解决办法使用js实现
2013/01/11 Javascript
JQueryEasyUI datagrid框架的基本使用
2013/04/08 Javascript
JS Jquery 遍历,筛选页面元素 自动完成(实现代码)
2013/07/08 Javascript
jquery ajax 局部无刷新更新数据的实现案例
2014/02/08 Javascript
详谈nodejs异步编程
2014/12/04 NodeJs
JQuery中的事件及动画用法实例
2015/01/26 Javascript
浅析node连接数据库(express+mysql)
2015/11/30 Javascript
利用JS对iframe父子(内外)页面进行操作的方法教程
2017/06/15 Javascript
jQuery实现的上传图片本地预览效果简单示例
2018/03/29 jQuery
vue实现与安卓、IOS交互的方法
2018/11/02 Javascript
layui实现数据表格table分页功能(ajax异步)
2019/07/27 Javascript
Webpack按需加载打包chunk命名的方法
2019/09/22 Javascript
原生js+canvas实现下雪效果
2020/08/02 Javascript
python爬虫入门教程之点点美女图片爬虫代码分享
2014/09/02 Python
Python中的filter()函数的用法
2015/04/27 Python
Python中使用hashlib模块处理算法的教程
2015/04/28 Python
Django原生sql也能使用Paginator分页的示例代码
2017/11/15 Python
Python button选取本地图片并显示的实例
2019/06/13 Python
win10系统下python3安装及pip换源和使用教程
2020/01/06 Python
解决pycharm每次打开项目都需要配置解释器和安装库问题
2020/02/26 Python
django model object序列化实例
2020/03/13 Python
Python单元测试及unittest框架用法实例解析
2020/07/09 Python
Python3.7安装PyQt5 运行配置Pycharm的详细教程
2020/10/15 Python
证婚人搞笑证婚词
2014/01/10 职场文书
2014年环境整治工作总结
2014/12/10 职场文书
神农溪导游词
2015/02/11 职场文书
创建文明城市倡议书
2015/04/28 职场文书
安全生产学习心得体会
2016/01/18 职场文书
JS数组的常用方法整理
2021/03/31 Javascript
Python Flask实现进度条
2022/05/11 Python