文章目录

  • 1. 简介
  • 2. 公式
  • 3. 代码实现
  • 4. 其他参考资料

代码来源于:https://github.com/yaleimeng/Final_word_Similarity
我将其单独抽取、组合出来做讲解。

1. 简介

相关系数:考察两个变量之间的相关程度。相关系数越大,相关性越强。
皮尔逊相关也称为积差相关,是英国统计学家皮尔逊于20世纪提出的一种计算直线相关的方法。

2. 公式


三个公式都能计算正确结果,我们采用第三个公式来编程实现。

3. 代码实现

from math import sqrtdef multiply(a,b):#a,b两个列表的数据一一对应相乘之后求和sum_ab=0.0for i in range(len(a)):temp=a[i]*b[i]sum_ab+=tempreturn sum_abdef cal_pearson(x,y):n=len(x)#求x_list、y_list元素之和sum_x=sum(x)sum_y=sum(y)#求x_list、y_list元素乘积之和sum_xy=multiply(x,y)#求x_list、y_list的平方和sum_x2 = sum([pow(i,2) for i in x])sum_y2 = sum([pow(j,2) for j in y])molecular=sum_xy-(float(sum_x)*float(sum_y)/n)#计算Pearson相关系数,molecular为分子,denominator为分母denominator=sqrt((sum_x2-float(sum_x**2)/n)*(sum_y2-float(sum_y**2)/n))return molecular/denominatorif __name__ == '__main__':x = [1.0, 0.8413847866522796, 1.0, 1.0, 0.7220196471443738, 0.8659769034282755, 0.8525472520008003, 1.0,0.8333703748448211, 0.389905372997432, 0.7323982353899079, 0.7636377912400188, 0.7182768399980969,0.2674857649974473, 0.4044950329998137, 0.34512807490538866, 0.18946683500771058, 0.30049731372316213,0.24729781155291156, 0.3094230131574097, 0.41238596985736753, 0.0, 0.0, 0.2684506957865521,0.14158316440453367, 0.35473275983651914, 0.0, 0.0, 0.0, 0.0]y = [0.98, 0.96, 0.96, 0.94, 0.925, 0.9025, 0.875, 0.855, 0.7775, 0.77, 0.7625, 0.7425, 0.7375, 0.705, 0.42, 0.415,0.29, 0.275, 0.2375, 0.2225, 0.2175, 0.21, 0.1575, 0.1375, 0.105, 0.105, 0.0325, 0.0275, 0.02, 0.02]res = cal_pearson(x,y)print(res) # 0.9171284464588204

4. 其他参考资料

如何理解皮尔逊相关系数(Pearson Correlation Coefficient)? - 微调的回答 - 知乎

皮尔逊(Pearson)相关系数 - 公式和代码实现相关推荐

  1. 相关系数之皮尔逊pearson相关系数和斯皮尔曼spearman等级相关系数(评价线性关系的相关系数)(第一部分)

    0.前言 一开始学这里的时候我感觉真的完犊子了,因为这部分的内容涉及到了概率论和数理统计的东西,概率论和数理统计虽然我现在在学,但我学的一团糟,翻书也毫无头绪,完了,现在就写一写自己怎么学的这两个系数 ...

  2. 相关系数(皮尔逊pearson相关系数和斯皮尔曼spearman等级相关系数)

    目录 总体皮尔逊Person相关系数: 样本皮尔逊Person相关系数: 两点总结: 假设检验:(可结合概率论课本假设检验部分) 皮尔逊相关系数假设检验: 更好的方法:p值判断方法 皮尔逊相关系数假设 ...

  3. 皮尔逊Pearson相关系数python代码实现

    皮尔逊相关系数简介 wiki介绍 皮尔逊积矩相关系数(英语:Pearson product-moment correlation coefficient,缩写:PPMCC,或PCCs,有时简称相关系数 ...

  4. 皮尔逊(Pearson)相关系数与spearman相关系数(Python实现)

    概念介绍 相关系数:考察两个事物(在数据里我们称之为变量)之间的相关程度. 相关系数大小解释 相关性 绝对值 无相关 0 - 0.09 弱相关 0.1 - 0.3 中相关 0.3 - 0.5 强相关 ...

  5. python皮尔森相关系数_Python计算皮尔逊 pearson相关系数

    pearson相关系数:用于判断数据是否线性相关的方法. 注意:不线性相关并不代表不相关,因为可能是非线性相关. Python计算pearson相关系数: 1. 使用numpy计算(corrcoef) ...

  6. Pearson(皮尔逊)相关系数[ Pearson product-moment correlation coefficient; PPMCC或PCCs]

    欧几里德距离 欧几里得度量定义欧几里得空间中点 x = (x1,...,xn) 和 y = (y1,...,yn) 之间的距离为 但是当评价结果中,评价者的评价相对于平均水平偏离很大的时候欧几里德距离 ...

  7. 数学建模——皮尔逊person相关系数VS斯皮尔曼spearman相关系数学习笔记

    皮尔逊 person相关系数和斯皮尔曼spearman等级相关系数,它们可用来衡量两个变量之间的相关性的大小,根据 数据满足的不同条件,我们要选择不同的相关系数进行计算和分析(建模论文中最容易用错的方 ...

  8. 皮尔逊积矩相关系数和显著性matlab,Excel 应用RSQ函数计算Pearson乘积矩相关系数的平方...

    RSQ函数用于根据known_y's和known_x's中数据点计算得出的Pearson乘积矩相关系数的平方.R平方值可以解释为y方差与x方差的比例.RSQ函数的语法如下. RSQ(known_y's ...

  9. 皮尔逊波形相似度python代码

    皮尔逊相关系数用来衡量两个变量之间的相似程度,值越接近1,则两个变量之间的相关性越大,值越接近0,则两个变量之间的相关性越小.皮尔逊相关系数可以用来衡量两个波形之间的相似度. 在 Python 中,可 ...

  10. Pearson(皮尔逊)相关系数

    统计相关系数简介 由于使用的统计相关系数比较频繁,所以这里就利用几篇文章简单介绍一下这些系数. 相关系数:考察两个事物(在数据里我们称之为变量)之间的相关程度. 如果有两个变量:X.Y,最终计算出的相 ...

最新文章

  1. 计算机视觉黑魔法 | 16个案例
  2. CSS的四种引入方式
  3. 【错误解决】[Maven] cannot be opened because it does not exist错误[文件无法编译到target目录下的解决方法]...
  4. HTML 中的特殊字符
  5. 打破牢笼,展望更高层次的世界
  6. docker安装nginx,配置nginx,并成功访问
  7. ubuntu 设置保护色
  8. python中pass语句学习
  9. Network Trimming: 数据指导的神经剪枝方法
  10. markdown中修改图片大小
  11. python中占位符解释
  12. 机制设计专栏(2)-说一说IC机制
  13. 今天给大家讲一个鬼故事
  14. 网狐大联盟机器管理工具编译与使用
  15. MYSQL 1366报错如何解决
  16. 8.2.2 使用SHOW CREATE TABLE语句查看表结构
  17. 1.3.密码技术发展历程与趋势
  18. 期货的价格代表什么(期货价格代表什么意思)
  19. Android KaptExecution:Annotation processors discovery from compile classpath is deprecated
  20. 【Rhapsody学习笔记】1:Hello World

热门文章

  1. 浙江大学2017年数学分析考研试题
  2. 阿里云服务器搬迁记录(2021年3月)
  3. 参考文献中英文人名_参考文献中英文人名的写法-
  4. Vue echarts 修改 X轴、Y轴 样式以及文字样式
  5. [单片机] KeilC51单块数码管演示与原理
  6. VSCODE也可以进行gtest细粒度测试
  7. 如何使用Veeam One默认安装出来的Sql Server数据库
  8. Mac上好用的音乐软件是哪个?MacOS专业音乐制作软件推荐
  9. c语言编写时钟图案,用C语言绘制电子时钟图案
  10. 电脑退域后登陆不上_退域后加域不成功问题