python 计算两个列表的相关系数

python 计算两个列表的相关系数

原创

CorwinPC博主文章分类:Python ©著作权

文章标签 python 相关性计算 第三方库 方差 协方差 文章分类 Python 后端开发

©著作权归作者所有:来自51CTO博客作者CorwinPC的原创作品,请联系作者获取转载授权,否则将追究法律责任

目录

​1、方法①:调用第三方库实现​

​2、方法②:编写函数计算实现​

​3、测试样例结果输出​

1、方法①:调用第三方库实现

from pandas import Seriesdef calc_corr1(a, b):    s1 = Series(a)    s2 = Series(b)    return s1.corr(s2)

2、方法②:编写函数计算实现

def calc_corr2(a, b):    a_avg = sum(a) / len(a)    b_avg = sum(b) / len(b)    # 计算分子,协方差————按照协方差公式,本来要除以n的,由于在相关系数中上下同时约去了n,于是可以不除以n    cov_ab = sum([(x - a_avg) * (y - b_avg) for x, y in zip(a, b)])    # 计算分母,方差乘积————方差本来也要除以n,在相关系数中上下同时约去了n,于是可以不除以n    sq = (sum([(x - a_avg) ** 2 for x in a]) * sum([(x - b_avg) ** 2 for x in b])) ** 0.5    corr_factor = cov_ab / sq    return corr_factor

3、测试样例结果输出

if __name__ == '__main__':    m1 = [254, 0, 1032, 633, 140, 136, 4, 3, 4266, 5639, 4354, 3093]    m2 = [10798, 0, 3233, 1739, 300, 113, 114, 159, 975, 2257, 16376, 8581]    print(calc_corr1(m1, m2))  # 0.40126106164889785    print(calc_corr2(m1, m2))  # 0.40126106164889797
  • 收藏
  • 评论
  • *举报

上一篇:nginx rewrite 请求域名路径

下一篇:python一行代码即可实现文件共享服务器

Original: https://blog.51cto.com/YangPC/5483153
Author: CorwinPC
Title: python 计算两个列表的相关系数

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/513515/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球