相关性分析——Pearson相关系数+热力图(附data和Python完整代码)

这篇具有很好参考价值的文章主要介绍了相关性分析——Pearson相关系数+热力图(附data和Python完整代码)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

相关性分析:指对两个或多个具有相关性的变量元素进行分析

1.散点图和相关性热力图

2.相关系数

相关系数最早是由统计学家卡尔 皮尔逊设计的统计指标,是研究变量之间线性相关承兑的值,一般用字母 r 表示。

2.1Pearson相关系数

Pearson相关系数是衡量两个数据集合是否在一条线上面,用于衡量变量间的线性关系。
python 皮尔逊相关系数,机器学习,python,开发语言

这里是引用如果有两个变量:X、Y,最终计算出的相关系数的含义可以有如下理解:
(1)、当相关系数为0时,X和Y两变量无关系。
(2)、当X的值增大(减小),Y值增大(减小),两个变量为正相关,相关系数在0.00与1.00之间。
(3)、当X的值增大(减小),Y值减小(增大),两个变量为负相关,相关系数在-1.00与0.00之间。

相关系数的绝对值越大,相关性越强,相关系数越接近于1或-1,相关度越强,相关系数越接近于0,相关度越弱。

通常情况下通过以下取值范围判断变量的相关强度: 相关系数 0.8-1.0 极强相关
0.6-0.8 强相关
0.4-0.6 中等程度相关
0.2-0.4 弱相关
0.0-0.2 极弱相关或无相关

2.2 Spearman相关系数

Spearman相关系数适用于不符合正态分布或者总体分布类型未知的数据,Spearman用于描述两个变量之间关联的程度与方向。

待补充

2.3Kendall等级相关系数

Kendall等级相关系数是用于反应分类相关变量的相关指标,适用于两个变量均为有序分类的情况,对相关的有序变量进行非参数性相关检验。

待补充

3.Python代码讲解

3.1 数据集

日期,蜜汁焗餐包,铁板酸菜豆腐,香煎韭菜饺,香煎罗卜糕,原汁原味菜心
2015/1/1,13,18,10,10,27
2015/1/2,9,19,13,14,13
2015/1/3,8,7,11,10,9
2015/1/4,10,9,13,14,13
2015/1/5,12,17,11,13,14
2015/1/6,8,12,11,5,9
2015/1/7,5,10,8,10,7
2015/1/8,7,6,12,11,5
2015/1/12,0,5,5,7,10
2015/1/13,8,6,9,8,9
2015/1/14,4,8,5,3,10
2015/1/15,8,15,9,13,9
2015/1/16,11,14,9,9,15
2015/1/17,14,16,9,4,14
2015/1/18,9,8,12,9,15
2015/1/19,9,10,6,11,11
2015/1/20,11,8,14,6,13
2015/1/21,7,1,5,12,8
2015/1/22,13,13,5,11,11
2015/1/23,5,8,7,8,11
2015/1/24,7,9,7,10,9
2015/1/25,7,14,7,6,8
2015/1/26,6,9,12,7,5
2015/1/27,12,6,12,9,4
2015/1/28,8,7,12,10,6
2015/1/29,7,8,10,10,11
2015/1/30,7,9,16,10,11
2015/1/31,8,8,10,10,9
2015/2/1,6,6,11,6,9

3.2代码讲解

3.2.1 读取excel文档,Pearson相关系数+热力图

import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns


# 读取菜品销售量数据
filepath = 'C:/Users/14210/Desktop/机器学习代码/data/cor.xlsx'
cor = pd.read_excel(filepath) 
# 计算相关系数矩阵,包含了任意两个菜品间的相关系数
print('5种菜品销售量的相关系数矩阵为:\n', cor.corr())

# 绘制相关性热力图
plt.subplots(figsize=(8, 8))  # 设置画面大小 
plt.rcParams['font.sans-serif'] = ['SimHei']  # 用来正常显示中文标签
plt.rcParams['axes.unicode_minus'] = False  # 用来正常显示负号 
sns.heatmap(cor.corr(), annot=True, vmax=1, square=True, cmap="Blues") 
plt.title('相关性热力图')
plt.show()

3.2.2 结果图

python 皮尔逊相关系数,机器学习,python,开发语言

3.2.3 读取csv文档,Pearson相关系数+热力图

# 读取csv文件

import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt

filepath = 'C:/Users/14210/Desktop/机器学习代码/data/cor.csv'
data = pd.read_csv(filepath)
df = pd.DataFrame(data)


# 计算出相关系数并输出,这里选择的是皮尔逊相关系数
cor = data.corr(method='pearson')
print(cor)  # 输出相关系数

rc = {'font.sans-serif': 'SimHei',
      'axes.unicode_minus': False}
sns.set(font_scale=0.7,rc=rc)  # 设置字体大小

sns.heatmap(cor,
            annot=True,  # 显示相关系数的数据
            center=0.5,  # 居中
            fmt='.2f',  # 只显示两位小数
            linewidth=0.5,  # 设置每个单元格的距离
            linecolor='blue',  # 设置间距线的颜色
            vmin=0, vmax=1,  # 设置数值最小值和最大值
            xticklabels=True, yticklabels=True,  # 显示x轴和y轴
            square=True,  # 每个方格都是正方形
            cbar=True,  # 绘制颜色条
            cmap='coolwarm_r',  # 设置热力图颜色
            )
plt.savefig("我是相关热力图.png",dpi=600)#保存图片,分辨率为600
plt.ion() #显示图片

3.2.4 结果图

python 皮尔逊相关系数,机器学习,python,开发语言

4.结果分析

根据热力图可以看出,原汁原味菜心铁板酸菜豆腐、蜜汁煸餐包这两种菜品的相关性较强,说明大部分客户对这3种菜品的偏好程度相当。文章来源地址https://www.toymoban.com/news/detail-752897.html

到了这里,关于相关性分析——Pearson相关系数+热力图(附data和Python完整代码)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 数据挖掘01-相关性分析及可视化【Pearson, Spearman, Kendall】

    ​ 有这么一句话在业界广泛流传: 数据和特征决定了机器学习的上限,而模型和算法只是逼近这个上限而已。 ​ 因此,数据挖掘在人工智能和大数据的时代下显得尤为重要。本人在工作中也会经常为数据挖掘方面的任务头疼,所以想将所见、所学、所整理的数据挖掘学习资

    2024年02月02日
    浏览(30)
  • 【python】求多变量/样本(矩阵)之间的相关性系数

    创作日志: Pearson或Spearson代表的是两个变量之间的相关性,因此一般输入是两个向量(vector),那么当我们有多个变量时,怎样计算他们两两之间的相关性系数呢?得到的correlation matrix各元素代表的又是什么意思呢? 举例: 矩阵A有两个样本:a1 与 a2,矩阵B有两个样本:b1 与

    2024年02月06日
    浏览(27)
  • 原生语言操作和spring data中RestHighLevelClient操作Elasticsearch,索引,文档的基本操作,es的高级查询.查询结果处理. 数据聚合.相关性系数打分

    ​ Elasticsearch 是一个分布式、高扩展、高实时的搜索与数据分析引擎。它能很方便的使大量数据具有搜索、分析和探索的能力。充分利用Elasticsearch的水平伸缩性,能使数据在生产环境变得更有价值。Elasticsearch 的实现原理主要分为以下几个步骤,首先用户将数据提交到Elasti

    2024年02月05日
    浏览(58)
  • Python进行数据相关性分析实战

    平时在做数据分析的时候,会要对特征进行相关性分析,分析某些特征之间是否存在相关性。本文将通过一个实例来对数据进行相关性分析与展示。 本次分析的是企业合作研发模式效果分析,企业的合作研发大致分为 企企合作、企学合作、企研合作、企学研合作,也就是企

    2024年02月10日
    浏览(26)
  • Spearman 相关性分析法,以及python的完整代码应用

    Spearman 相关性分析法是一种针对两个变量之间非线性关系的相关性计算方法,同时,它不对数据的分布进行假设。该方法的基本思想是将两个(也可以多个)变量的值进行排序,并计算它们之间的等级相关性(Spearman 相关系数)。Spearman 相关系数的范围在 -1 到 1 之间,取值为

    2024年02月09日
    浏览(28)
  • 基于R、Python的Copula变量相关性分析及AI大模型应用

    在工程、水文和金融等各学科的研究中,总是会遇到很多变量,研究这些相互纠缠的变量间的相关关系是各学科的研究的重点。虽然皮尔逊相关、秩相关等相关系数提供了变量间相关关系的粗略结果,但这些系数都存在着无法克服的困难。例如,皮尔逊相关系数只能反映变量

    2024年04月12日
    浏览(41)
  • 【hive】相关性函数进行相关性分析

    在Hive SQL中,使用类似的相关性函数进行相关性分析。常见的相关性函数包括CORR、COVAR_POP、COVAR_SAMP、STDDEV_POP、STDDEV_SAMP等。 举个例子,假设有一个表格sales,其中包含两列数据 sales_amt 和 advertising_amt ,我们可以使用CORR函数来计算这两列数据的相关性: 这将返回一个值,表示

    2024年02月21日
    浏览(31)
  • 表达矩阵任意两个基因相关性分析 批量相关性分析 tcga geo 矩阵中相关性强的基因对 基因相关性 ecm matrisome与gpx3

    使用场景 1.已经确定研究的基因,但是想探索他潜在的功能,可以通过跟这个基因表达最相关的基因来反推他的功能,这种方法在英语中称为 guilt of association,协同犯罪 。 2.我们的注释方法依赖于TCGA大样本,既然他可以注释基因,那么任何跟肿瘤相关的基因都可以被注释,

    2024年02月01日
    浏览(41)
  • 【100天精通Python】Day57:Python 数据分析_Pandas数据描述性统计,分组聚合,数据透视表和相关性分析

    目录 1 描述性统计(Descriptive Statistics) 2 数据分组和聚合 3 数据透视表 4 相关性分析

    2024年02月07日
    浏览(40)
  • 常见的相关性分析

    方差分析和相关性分析都是描述特征之间的关系的统计方法,但它们关注的方面略有不同。 方差分析主要用于研究一个或多个自变量对因变量的影响,即研究因素之间的差异性。通过比较不同组之间的方差,可以确定哪些因素对结果变量的影响比较重要,以及不同组之间的显

    2024年02月11日
    浏览(31)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包