全国大学生数学建模大赛备赛——相关系数的求解(皮尔逊(pearson)、斯皮尔曼(spearman)、肯德尔(kendall)相关系数)

相关系数是用来衡量两个变量之间线性相关程度的指标。它的取值范围在-1到1之间,当相关系数为1时表示两个变量完全正相关(即一个变大另一个也变大),当相关系数为-1时表示两个变量完全负相关(即一个变大另一个变小),当相关系数为0时表示两个变量不存在线性相关性。

常用的相关系数有 Pearson 相关系数(用于衡量两个连续变量之间的线性相关性),Spearman 相关系数(用于衡量两个变量之间的等级相关性)等。相关系数的计算可以帮助我们了解数据之间的关系,对于统计分析和建模非常重要。

皮尔逊(pearson):

皮尔逊相关系数(Pearson correlation coefficient)衡量了两个连续变量之间的线性关系强度和方向。取值范围在-1到1之间,-1表示完全负相关,1表示完全正相关,0表示无线性相关

计算公式:

         

  1. 皮尔逊相关系数适用场景:

    • 适用于连续变量之间的线性关系分析,例如:身高和体重之间的相关性分析、温度和销售额之间的相关性分析等。
    • 适用于正态分布的数据或者满足线性关系的数据。

斯皮尔曼(spearman):

斯皮尔曼相关系数(Spearman’s rank correlation coefficient)用于度量两个变量之间的等级关系的强度和方向。它通过将变量的观测值转换为等级,然后计算这些等级之间的皮尔逊相关系数来实现。

计算公式:

        

  1. 斯皮尔曼相关系数适用场景:

    • 适用于两个变量之间的等级关系分析,不要求数据满足线性关系。
    • 适用于数据不满足正态分布或存在异常值的情况,更具有鲁棒性。

肯德尔(kendall):

肯德尔相关系数(Kendall rank correlation coefficient)也用于测量变量之间的等级关系。与斯皮尔曼相关系数类似,它使用变量的等级而不是实际值,来计算两个变量之间的相关性。

 计算公式;

        

  1. 肯德尔相关系数适用场景:

    • 适用于两个变量之间的等级关系分析,也不要求数据满足线性关系。
    • 在样本数据较小时或存在重复数据时,肯德尔相关系数通常比较适用。
    • 对异常值相对比较敏感的情况下,肯德尔相关系数也更可靠。

这三种相关系数都是用来度量变量之间关系的强度和方向,但适用于不同类型的数据和假设。

实例数据集:

sepal length (cm)sepal width (cm)petal length (cm)petal width (cm)target
5.13.51.40.20
4.931.40.20
4.73.21.30.20
4.63.11.50.20
53.61.40.20
5.43.91.70.40
4.63.41.40.30
53.41.50.20
4.42.91.40.20
4.93.11.50.10
5.43.71.50.20
4.83.41.60.20
4.831.40.10
4.331.10.10
5.841.20.20
5.74.41.50.40
5.43.91.30.40
5.13.51.40.30
5.73.81.70.30
5.13.81.50.30
5.43.41.70.20
5.13.71.50.40
4.63.610.20
5.13.31.70.50
4.83.41.90.20
531.60.20
53.41.60.40
5.23.51.50.20
5.23.41.40.20
4.73.21.60.20
4.83.11.60.20
5.43.41.50.40
5.24.11.50.10
5.54.21.40.20
4.93.11.50.20
53.21.20.20
5.53.51.30.20
4.93.61.40.10
4.431.30.20
5.13.41.50.20
53.51.30.30
4.52.31.30.30
4.43.21.30.20
53.51.60.60
5.13.81.90.40
4.831.40.30
5.13.81.60.20
4.63.21.40.20
5.33.71.50.20
53.31.40.20
73.24.71.41
6.43.24.51.51
6.93.14.91.51
5.52.341.31
6.52.84.61.51
5.72.84.51.31
6.33.34.71.61
4.92.43.311
6.62.94.61.31
5.22.73.91.41
523.511
5.934.21.51
62.2411
6.12.94.71.41
5.62.93.61.31
6.73.14.41.41
5.634.51.51
5.82.74.111
6.22.24.51.51
5.62.53.91.11
5.93.24.81.81
6.12.841.31
6.32.54.91.51
6.12.84.71.21
6.42.94.31.31
6.634.41.41
6.82.84.81.41
6.7351.71
62.94.51.51
5.72.63.511
5.52.43.81.11
5.52.43.711
5.82.73.91.21
62.75.11.61
5.434.51.51
63.44.51.61
6.73.14.71.51
6.32.34.41.31
5.634.11.31
5.52.541.31
5.52.64.41.21
6.134.61.41
5.82.641.21
52.33.311
5.62.74.21.31
5.734.21.21
5.72.94.21.31
6.22.94.31.31
5.12.531.11
5.72.84.11.31
6.33.362.52
5.82.75.11.92
7.135.92.12
6.32.95.61.82
6.535.82.22
7.636.62.12
4.92.54.51.72
7.32.96.31.82
6.72.55.81.82
7.23.66.12.52
6.53.25.122
6.42.75.31.92
6.835.52.12
5.72.5522
5.82.85.12.42
6.43.25.32.32
6.535.51.82
7.73.86.72.22
7.72.66.92.32
62.251.52
6.93.25.72.32
5.62.84.922
7.72.86.722
6.32.74.91.82
6.73.35.72.12
7.23.261.82
6.22.84.81.82
6.134.91.82
6.42.85.62.12
7.235.81.62
7.42.86.11.92
7.93.86.422
6.42.85.62.22
6.32.85.11.52
6.12.65.61.42
7.736.12.32
6.33.45.62.42
6.43.15.51.82
634.81.82
6.93.15.42.12
6.73.15.62.42
6.93.15.12.32
5.82.75.11.92
6.83.25.92.32
6.73.35.72.52
6.735.22.32
6.32.551.92
6.535.222
6.23.45.42.32
5.935.11.82

 这里以鸾尾花的数据集为例

皮尔逊(pearson)

        代码实现:

        

import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
from sklearn import datasets
# 加载鸢尾花数据集
iris = datasets.load_iris()
# 转换为 DataFrame
iris_df = pd.DataFrame(data=iris.data, columns=iris.feature_names)
# 计算相关系数(pearson方法)
iris_pearson = iris_df.corr(method='pearson')
#输出计算结果
print(iris_pearson)
#生成特征热力图
plt.figure(figsize=(10,8))
sns.heatmap(iris_df.corr(method='kendall'),cmap="coolwarm",annot=True)
plt.show()

  图片:

 

斯皮尔曼(spearman)

        代码:

                    

import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
from sklearn import datasets
# 加载鸢尾花数据集
iris = datasets.load_iris()
# 转换为 DataFrame
iris_df = pd.DataFrame(data=iris.data, columns=iris.feature_names)
# 计算相关系数(spearman方法)
iris_pearson = iris_df.corr(method='spearman')
#输出计算结果
print(iris_pearson)
#生成特征热力图
plt.figure(figsize=(10,8))
sns.heatmap(iris_df.corr(method='kendall'),cmap="cool",annot=True)
plt.show()

        图片:

 

肯德尔(kendall)相关系数

         代码:

        

import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
from sklearn import datasets
# 加载鸢尾花数据集
iris = datasets.load_iris()
# 转换为 DataFrame
iris_df = pd.DataFrame(data=iris.data, columns=iris.feature_names)
# 计算相关系数(kendall方法)
iris_pearson = iris_df.corr(method='kendall')
#输出计算结果
print(iris_pearson)
#生成特征热力图
plt.figure(figsize=(10,8))
sns.heatmap(iris_df.corr(method='kendall'),cmap="Blues_r",annot=True)
plt.show()

         图片:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/481268.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

linux查看usb是3.0还是2.0

1 作为device cat /sys/devices/platform/10320000.usb30drd/10320000.dwc3/udc/10320000.dwc3/current_speed 如下 high-speed usb2.0 super-speed usb3.0 2 作为host linux下使用以下命令查看 ,如果显示 速率为5G, 则为USB 3.0, USB2.0通常显示速率…

STM32CubeIDE 1.15.0 LOAD segment with RWX permissions 警告处理

处理办法: 在"xx_FLASH.ld"文件中,找到并添加上(READONLY),即可消除 .ARM.extab (READONLY) :.ARM (READONLY) :.preinit_array (READONLY) :.init_array (READONLY) :.fini_array (READONLY) :

记录C++中,子类同名属性并不能完全覆盖父类属性的问题

问题代码&#xff1a; 首先看一段代码&#xff1a;很简单&#xff0c;就是BBB继承自AAA&#xff0c;然后BBB重写定义了同名属性&#xff0c;然后调用父类AAA的打印函数&#xff1a; #include <iostream> using namespace std;class AAA { public:AAA() {}~AAA() {}void …

QT tableWidget横向纵向设置

横向控件 要设置QTabWidget选项卡的字体方向&#xff0c;可以使用QTabWidget的setTabPosition()方法。通过传递Qt枚举值QTabWidget.east或QTabWidget.west作为参数&#xff0c;可以设置选项卡的字体方向为从左到右或从右到左。 myTabWidget QTabWidget() myTabWidget.setTabP…

判断是否是完全二叉树

题目 题目链接 判断是不是完全二叉树_牛客题霸_牛客网 题目描述 代码实现 #include <queue> class Solution { public:/*** 代码中的类名、方法名、参数名已经指定&#xff0c;请勿修改&#xff0c;直接返回方法规定的值即可** * param root TreeNode类 * return boo…

虚拟机安装Linux系统,FinalShell远程连接Linux

1.虚拟机安装CentOS系统 2. 查看CentOS系统的ip地址 3. FinalShell远程连接Linux 3.虚拟机快照&#xff08;存档&#xff09; 确保虚拟机关机&#xff0c;找到快照模拟器 恢复快照

【Mysql】面试题汇总

1. 存储引擎 1-1. MySQL 支持哪些存储引擎&#xff1f;默认使用哪个&#xff1f; 答&#xff1a; MySQL 支持的存储引擎包括 InnoDB、MyISAM、Memory 等。 Mysql 5.5 之前默认的是MyISAM&#xff0c;Mysql 5.5 之后默认的是InnoDB。 可以通过 show engines 查看 Mysql 支持…

ES的集群节点发现故障排除指南(2)

本文是ES官方文档关于集群节点发现与互联互通的问题排查指南内容&#xff0c;第二部分。 原文参考及相关内容&#xff1a; 英文原文&#xff08;官网&#xff09; 第一部分-&#xff08;1&#xff09; 已选出主节点但状态不稳定&#xff1f; 当一个节点赢得主节点选举时&…

苹果电脑不能删除移动硬盘文件 苹果电脑移动硬盘只读模式如何更改 移动硬盘文件或目录损坏且无法读取怎么办

当我们将移动硬盘插入苹果电脑后&#xff0c;发现无法对移动硬盘中的文件进行编辑该怎么办&#xff1f;相信有不少网友遇到过这类情况。苹果电脑不能删除移动硬盘文件&#xff0c;或无法拷贝硬盘里的文件。今天我为大家解决苹果电脑移动硬盘只读模式如何更改的问题&#xff0c;…

运维 | 在企业环境中快速安装配置 FreeBSD Unix 服务器操作系统

微信改版了,现在看到我们全凭缘分,为了不错过【全栈工程师修炼指南】重要内容及福利,大家记得按照上方步骤设置「接收文章推送」哦~ 0x01 Unix 服务器系统 FreeBSD Unix FreeBSD 是什么? 描述: FreeBSD 是一种用于为现代服务器、台式机和嵌入式平台供电的操作系统; 三十多…

计算机组成原理 例题集

补码的规格化表示是小数点后一位与符号位不同&#xff1a;数符为0,这个数就是正数,正数补码就是其本身,其最高有效位(阶码使用标准移码的话规格化后尾数最高有效位就是小数点后第一位)必定为1,数符0和最高有效位的1相异.数符为1,这个数就是个负数,求负数的补码有一步叫按位取反…

基于ssm物流管理系统设计与实现论文

摘 要 现代经济快节奏发展以及不断完善升级的信息化技术&#xff0c;让传统数据信息的管理升级为软件存储&#xff0c;归纳&#xff0c;集中处理数据信息的管理方式。本物流管理系统就是在这样的大环境下诞生&#xff0c;其可以帮助管理者在短时间内处理完毕庞大的数据信息&am…

Grass手机注册使用教程,利用闲置手机WiFi带宽赚钱

文章目录 Grass是什么&#xff1f; 项目介绍Grasss手机使用步骤第一步&#xff1a;下载狐猴浏览器第二步&#xff1a;注册账户&#xff08;已注册直接跳过&#xff09;第三步&#xff1a;安装Grass Chrome插件1、推荐离线安装2、在线安装 第四步&#xff1a;登录第五步&#xf…

python共有26个内置类,你知道几个?

目录 数值类 4 int bool float complex 序列类 5 str tuple list bytes bytearray 字典和集合 3 dict set frozenset 其他可迭代类 5 range enumerate slice reversed zip 映射和筛选 2 map filter 类型和视图 2 type memoryview 类相关类型 5 ob…

[C++]日期类的实现

本专栏内容为&#xff1a;C学习专栏&#xff0c;分为初阶和进阶两部分。 通过本专栏的深入学习&#xff0c;你可以了解并掌握C。 &#x1f493;博主csdn个人主页&#xff1a;小小unicorn ⏩专栏分类&#xff1a;C &#x1f69a;代码仓库&#xff1a;小小unicorn的代码仓库&…

【TB作品】430单片机,单片机串口多功能通信,Proteus仿真

文章目录 题目功能仿真图程序介绍代码、仿真、原理图、PCB 题目 60、单片机串口多功能通信 基本要求: 设计一串口通信程序,波特率38400,通过RS232与PC机通信。 自动循环发送数据串(设计在程序中) 接收并存储和显示该数据串 在发送端定义10个ASCII码键0-9 按键发送单字节,PC机接…

网络上常见的环路指的是什么

人类的创造力与破坏力同样强大"。 网路互通&#xff0c;同样也衍生出纷繁复杂的路由协议和各种因特网服务&#xff0c;以及"网络安全"这个庞大的领域。 这也是为什么说当今所有的网络通讯流量中&#xff0c;80%的资源都被浪费&#xff0c;只有20%被用以有效数…

AXS4004 5V 300mA 低噪声电荷泵 DCDC转换器 爱协生 参数文

概述 AXS4004是一款低噪声、固定频率360KHz的电荷泵型DC DC转换器&#xff0c;在输入电压2.5V到5V的情况下&#xff0c;恒定输出5V电压&#xff0c;电压精度为&#xff1a;3%&#xff0c;输出电流最大达到300mA。AXS4004外部零件少&#xff0c;非常适合小型的电池供电应用。AX…

【索引失效】MySQL索引失效场景

1、对索引使用左或者左右模糊匹配 当我们使用左或者左右模糊匹配的时候&#xff0c;也就是 like %xx 或者 like %xx% 这两种方式都会造成索引失效。 比如下面的 like 语句&#xff0c;查询 name 后缀为「林」的用户&#xff0c;执行计划中的 typeALL 就代表了全表扫描&#xff…

【VTKExamples::Points】第六期 ExtractSurface

很高兴在雪易的CSDN遇见你 VTK技术爱好者 QQ:870202403 公众号:VTK忠粉 前言 本文分享VTK样例ExtractSurface,并解析接口vtkSignedDistance & vtkExtractSurface,希望对各位小伙伴有所帮助! 感谢各位小伙伴的点赞+关注,小易会继续努力分享,一起进步! 你的…