皮尔逊相关系数:

用于度量两个变量X和Y之间的相关(线性相关),其值介于-1与1之间。

几组

的点集,以及各个点集中

之间的相关系数。我们可以发现相关系数反映的是变量之间的线性关系和相关性的方向(第一排),而不是相关性的斜率(中间),也不是各种非线性关系(第三排)。请注意:中间的图中斜率为0,但相关系数是没有意义的,因为此时变量

是0。

它的几何意义,就是夹角的余弦值:

下面是python的程序实现:

def multipl(a,b):

"""

传入的是两个序列

传出的是这两个序列的乘积之和。

"""

sumofab=0.0

for i in range(len(a)):

temp=a[i]*b[i]

sumofab+=temp

return sumofab

def corrcoef(x,y):

"""

传入的是两个序列,得到的是两个序列的相关系数

"""

n=len(x)

#求和

sum1=sum(x)

sum2=sum(y)

#求乘积之和

sumofxy=multipl(x,y)

#求平方和

sumofx2 = sum([pow(i,2) for i in x])

sumofy2 = sum([pow(j,2) for j in y])

num=sumofxy-(float(sum1)*float(sum2)/n)

#计算皮尔逊相关系数

den=sqrt((sumofx2-float(sum1**2)/n)*(sumofy2-float(sum2**2)/n))

return num/den

上面的程序是根据下面的公式推导得到的:

但是这个程序在输入

x = [1,2,3,4]

y = [1,1,1,1]

时会出现问题:分母会有0的出现(橘色方框部分就是0)

报错:ZeroDivisionError: float division by zero

这个是公式的漏洞吗?????

按理说,完整的相关系数应该考虑到这一点才对。

python颜色相关系数_python相关系数 - osc_w6qmyr6s的个人空间 - OSCHINA - 中文开源技术交流社区...相关推荐

  1. python 论坛模板_python模板 - PH的个人空间 - OSCHINA - 中文开源技术交流社区

    看Python帮助文档模板部分,抄下来以备记忆 11.2. Templating The string module includes a versatile Template class with ...

  2. python 状态机第三方库_Python 状态机 - osc_8g11urw7的个人空间 - OSCHINA - 中文开源技术交流社区...

    class StateMachine: def __init__(self): self.handlers = {} # 状态转移函数字典 self.startState = None # 初始状态 ...

  3. python病毒代码大全_python病毒 - osc_bx0x099p的个人空间 - OSCHINA - 中文开源技术交流社区...

    介绍 源码 分为3个部分 1.搜索,搜寻所有的python脚本 2.取出当前文件的前39行,也就是这个脚本的长度,然后将这个脚本写道所有找到的python脚本中去 3.其他行为 #!/usr/bin/ ...

  4. python sqlite3加密_sqlite3加密 - kjpioo的个人空间 - OSCHINA - 中文开源技术交流社区...

    SQLite 3 开源版不带加密功能,对于一个保存在本地的数据库来说没有加密功能让人难以接受,只要用记事本打开数据库就可以看到数据库内保存的数据,对安全多多少少有一点影响.有一个办法是把内容加密后保存 ...

  5. python莫比乌斯_莫比乌斯函数 - osc_7eqzxl4g的个人空间 - OSCHINA - 中文开源技术交流社区...

    前导 要学习莫比乌斯函数 需要学习 到 积性函数,深度理解欧拉筛. 先说说什么是积性函数吧. 积性函数 其实积性函数非常好理解, 定义 积性函数:若gcd(a,b)=1,且满足f(ab)=f(a)f( ...

  6. python列表去重效率_python面试题 - osc_yztbpii7的个人空间 - OSCHINA - 中文开源技术交流社区...

    1.一行代码实现1--100之和 In [1]: sum(range(1,101)) Out[1]: 5050 1-100求和 2.如何在一个函数内部修改全局变量 a=520 deffun():glo ...

  7. python 条件表达式换行_Python基础语法 - LongKing-Xu的个人空间 - OSCHINA - 中文开源技术交流社区...

    python基础语法 一.标识符 在Python中,所有标识符可以包括英文.数字以及下划线(_),但不能以数字开头. 在Python中的标识符是区分大小写的. 在Python中以下划线开头的标识符是有 ...

  8. python变量无需指定类型对吗_Python变量类型 - osc_3rgq3dae的个人空间 - OSCHINA - 中文开源技术交流社区...

    变量存储在内存中的值,这就意味着在创建变量时会在内存开辟一个空间. 基于变量的数据类型,解析器会分配指定内存,并决定什么数据可以被存储在内存中. 因此变量可以指定不同的数据类型,这些变量可以存储整数. ...

  9. python蓝牙上位机开发_python做上位机 - osc_2frv0wjp的个人空间 - OSCHINA - 中文开源技术交流社区...

    参考文章: https://blog.csdn.net/dgut_guangdian/article/details/78391270 https://www.cnblogs.com/lanceyu/ ...

最新文章

  1. 为什么单片机程序中会有延时程序加入
  2. httpruner学习--安装和认识
  3. Canvas实用库Fabric.js使用手册
  4. Html5元素及基本语法
  5. Java 字符串匹配的KMP算法
  6. JS对cookie进行操作
  7. mysql select count() count(1)_select count()和select count(1)的区别和执行方式讲解
  8. manual 离线手册 韩顺平php_PHP - Manual: 手册的格式 (官方文档)
  9. UIKit基础:17-基础控件的总结
  10. Java中的ReentrantLock和synchronized两种锁机制的对比
  11. ubuntu14.04小米无线网卡驱动安装
  12. 周鸿祎谈乔布斯(张亮)
  13. 检验新买内存条的真假
  14. VS2015中更改项目名称
  15. Dynamic CRM 2016 IFD配置(6)Claims-based认证-外部访问配置
  16. sql select半角html全角,SQL转换全角和半角函数
  17. 骚操作 | 2秒教你用微信远程控制电脑,Get~
  18. RAID 磁盘阵列与阵列卡
  19. 计算机电源测试电压,快速判断计算机电源好坏方法
  20. 董树义 近代微波测量技术_微波和微波信号的分析方法介绍

热门文章

  1. python整数格式化表达式_Python字符串格式化表达式和格式化方法
  2. Scrapy添加随机ip
  3. C#语法中String与string的区别
  4. LabVIEW: 无法执行该VI。
  5. MySQL的安装,Python开发人员
  6. 几十行python代码构建一个前后端分离的目标检测演示网站,代码开源
  7. Python网络编程——使用TCP方式传输文件
  8. Express-static
  9. ExtJs2.0学习系列(4)--Ext.FormPanel之第一式
  10. 字符编码知识:Unicode、UTF-8、ASCII、GB2312等编码之间是如何转换的?