【数学建模】皮尔逊相关系数和假设检验

这篇具有很好参考价值的文章主要介绍了【数学建模】皮尔逊相关系数和假设检验。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。



前言

为了说明两组数据之间的相关性,例如身高与50米跑步的成绩,我们引入相关系数,本文先介绍person相关系数以及在特定情况下的使用方法。


一、pearson相关系数(Covariance)

Person相关系数在 满足特定条件下 用来衡量两个变量之间的相关性。

1. 协方差

在正式介绍person相关系数之前,我们先引入协方差的概念
协方差是一个反映两个随机变量相关程度的指标,比如,一个人的身高和体重是否存在一些联系。公式如下:
【数学建模】皮尔逊相关系数和假设检验,数学建模,数学建模
其中 n为样本数量, x ‾ \overline{x} x 为样本均值。

如果x、y变化方向相同,即当 x > x ‾ x>\overline{x} x>x其均值是, y > y ‾ y>\overline{y} y>y其均值,在这种情况下,乘积为正。如果x、y的变化方向一直保持相同,则协方差为正;同理,如果x、y的变化方向一直保持相反,则协方差为负;如果x、y的变化方向之间相互无规律,即分子中有的项为正、有的项为负,那么累加后正负抵消。

协方差越大,那么二者之间变化的趋势就越接近。

2.皮尔逊相关系数(Pearson Correlation Coefficient)

Pearson相关系数是用协方差除以两个变量的标准差得到的,公式如下:
【数学建模】皮尔逊相关系数和假设检验,数学建模,数学建模
除以标准差的目的是消除量纲的影响,Pearson相关系数取[-1,1之间。皮尔逊相关系数其实就是标准化后的协方差

3. 相关系数的评价

相关性
无相关 -0.09~0 0~0.09
弱相关 -0.3~-0.1 0.1~0.3
中相关 -0.5~-0.3 0.3~0.5
强相关 -1~-0.5 0.5~1.0

事实上,比起相关系数的大小,我们往往更关注的是显著性(假设检验)。

二、使用条件

必须得确定两个变量之间是线性相关的,否则非线性相关也会导致pearson相关系数很大。存在异常点的影响也可能导致两个变量之间的相关系数变大。我们常用散点图的方法确定两个变量之间的是否线性相关,然后再描述线性相关程度。
【数学建模】皮尔逊相关系数和假设检验,数学建模,数学建模
因此在进行相关性的分析时一定要配合散点图,否则是无效的。

三、使用步骤

1.对数据进行描述性分析

推荐spsspro工具,简单高效。
【数学建模】皮尔逊相关系数和假设检验,数学建模,数学建模
【数学建模】皮尔逊相关系数和假设检验,数学建模,数学建模
或者python的pandas库,使用 Dataframe.describe()函数

data = pd.read_csv(
    'https://labfile.oss.aliyuncs.com/courses/1283/adult.data.csv')
print(data.describe())

【数学建模】皮尔逊相关系数和假设检验,数学建模,数学建模
答题之前先对数据进行描述性分析是个好习惯,不管以上分析有用没用,都是一种学术严谨的表现。

2. 绘制散点图

前面提到 绘制散点图是检查数据是否可用pearson相关性分析的必要条件,这里我们用python matpolit,对以上六个特征列取两两绘制散点图。

plt.figure(figsize=(60,50))
num = 1

for i in range(6):
    for j in range(6):
      plt.subplot(6,6,num)
      plt.scatter(df.iloc[:,i],df.iloc[:,j],s=2)
      plt.title(df.iloc[:,i].name+"--"+df.iloc[:,j].name)
      num = num+1
# plt.tight_layout()
plt.show()

绘制结果如下:
【数学建模】皮尔逊相关系数和假设检验,数学建模,数学建模
由于我这里数据是的,因此散点图的显示基本上没有相关性可言,不要在意这些细节,方法就是这么个方法,让我们继续。

3. pearson检验

推荐spasspro工具,简单高效还免费
【数学建模】皮尔逊相关系数和假设检验,数学建模,数学建模
相关性分析结果
【数学建模】皮尔逊相关系数和假设检验,数学建模,数学建模
显著性水平 ()中为假设检验的P值,我们假设 H 0 : r = 0 , H_0:r=0, H0:r=0,即该两列数据相关性为0
H 1 : r ≠ 0 H_1:r\neq0 H1:r=0即该两列数据相关性不为0。

当 P<0.01时,说明 H 0 H_0 H0显著不成立,即该两列相关程度很高,0.01<P<0.05时,该两列中度相关。
下文详细介绍假设检验
相关性分析热力图
【数学建模】皮尔逊相关系数和假设检验,数学建模,数学建模

四、假设检验

前面提到直接通过相关系数进行假设检验是非常武断的,这里引入假设性检验对相关性系数的显著性进行分析。

假设性检验这里只讲如何应用,首先得满足一个条件:该数据必须符合正态分布

正态分布检验

spsspro检验结果【数学建模】皮尔逊相关系数和假设检验,数学建模,数学建模

PS:通常现实研究情况下很难满足检验,若其样本峰度绝对值小于10并且偏度绝对值小于3,结合正态分布直方图、PP图或者QQ图可以描述为基本符合正态分布。

直方图
【数学建模】皮尔逊相关系数和假设检验,数学建模,数学建模
Q-Q图
【数学建模】皮尔逊相关系数和假设检验,数学建模,数学建模
Q-Q图,全称“Quantile Quantile Plot”。用图形的方式比较观测值与预测值(假定正态下的分布)不同分位数的概率分布,从而检验是否吻合正态分布规律。并且将实际数据作为X轴,将假定正态时的数据分位数作为Y轴,作散点图,散点与直线重合度越高越服从正态分布,散点差异愈大越不服从正态分布,请视实际情况而定。

假设检验

  1. 提出原假设 H 0 H_0 H0 和备择假设 H 1 H_1 H1,假设我们计算出来一个pearson相关系数r,我们项检验它是否显著的异于0,那么我们可以这样设定原假设和备择假设: H 0 : r = 0 H_0:r = 0 H0:r=0 , H 1 : r ≠ 0 H_1:r \neq0 H1:r=0
  2. 在原假设成立的条件下,利用我们要检验的量构造出一个符合某一分布的统计量。这里pearson有特定的t分布:
    t = r n − 2 1 − r 2 t=r\sqrt{\frac{n-2}{1-r^2}} t=r1r2n2
    可以证明t是服从自由度为n-2的 t-distribution
  3. 将我们要检验的这个值带入这个统计量中,可以得到一个特定的值(检验值)。
    假设我们现在计算出来的相关系数为0.5,样本为30,那么我们可以得到 t ∗ = 0.5 30 − 2 1 − 0. 5 2 = 3.05505 t^*=0.5\sqrt{\frac{30-2}{1-0.5^2}}=3.05505 t=0.510.52302 =3.05505
  4. 由于我们知道统计量的分布情况,因此我们可以画出该分布的概率密度函数pdf,并给定一个置信水平,根据这个置信水平找到临界值,并画出检验统计量的接受域和拒绝域。常见的置信水平有三个:90%,95%,99%,其中95%是三者中最为常用。
  5. 看我们计算出来的检验值是落在了拒绝域还是接受域,并下结论。

总结

pearson相关系数其实就是两组数据的协方差的去量纲,只有在两组数据有线性相关性时才适用。对pearson相关系数的分析要用到假设检验,进行假设检验需要满足数据符合正态分布。

补充 spearman相关系数

假如数据实在不能看,没有任何线性关系、正态分布关系,那就放弃pearson相关系数吧,白搭。

当然,天无绝人之路,备用方案:spearman相关系数
先看公式:

r s = 1 − 6 ∑ i = 1 n d i 2 n ( n 2 − 1 ) r_s=1-\frac{6\sum_{i=1}^n{d_i^2}}{n(n^2-1)} rs=1n(n21)6i=1ndi2

这里 n就是样本数, d i d_i di是X Y 的等级差
等级:将一组数从小到大排列后,每个数所在的位置就是等级。
也就是说这个spearman相关性跟数据值无关,跟它在的位置有关,虽然听起来不太靠谱,但总归是能在非线性数据上看相关性了。

spsspro
【数学建模】皮尔逊相关系数和假设检验,数学建模,数学建模
这里依旧是通过假设检验评价相关程度,()中为假设检验的P值,*表示相关程度。文章来源地址https://www.toymoban.com/news/detail-704116.html

到了这里,关于【数学建模】皮尔逊相关系数和假设检验的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 数学建模预测模型MATLAB代码大合集及皮尔逊相关性分析(无需调试、开源)

           选取2000-2017年x省碳排放量为训练集,2018-2022x省碳排放量作为测试集,以此来预测2023-2026年x省碳排放量。设置训练次数为 1000次,学习速率为0.2;对该训练集BP神经网络模型拟合后模型的训练样本、验 证样本和测试样本的均方误差分别是0.000012、0.0023、0.0042,整体的误

    2024年02月08日
    浏览(34)
  • 相关系数(皮尔逊相关系数和斯皮尔曼相关系数)

     本文借鉴了数学建模清风老师的课件与思路,可以点击查看链接查看清风老师视频讲解:5.1 对数据进行描述性统计以及皮尔逊相关系数的计算方法_哔哩哔哩_bilibili 注:直接先看 ( 三、两个相关系数系数的比较 ) 部分!!! 目录 ​编辑 一、数据的描述性统计分析  二、

    2024年01月21日
    浏览(36)
  • 皮尔逊相关系数及假设检验

    一、看两者是否算相关要看两方面:显著水平以及相关系数 (1)显著水平,就是P值,这是首要的,因为如果不显著,相关系数再高也没用,可能只是因为偶然因素引起的,那么多少才算显著,一般p值小于0.05就是显著了;如果小于0.01就更显著;例如p值=0.001,就是很高的显著水平了,只要

    2024年02月08日
    浏览(48)
  • js计算皮尔逊相关系数

    代码如下; 调用:  效果:

    2024年01月25日
    浏览(40)
  • [皮尔逊相关系数corrwith]使用案例:电影推荐系统

    协同过滤算法用于发现用户与物品之间的相关性,主要有两种:基于用户的和基于物品的。 基于用户: 用户1购买了物品A、B、C、D,并给了好评;而用户2也买了A、B、C,那么认为用户1和用户2是同类型用户,也可以把D推荐给用户2。 基于物品: 物品A和物品B都被用户1、2、

    2024年02月10日
    浏览(38)
  • 皮尔逊相关系数及代码实现(C语言+MATLAB)

    皮尔逊相关系数,常用于度量两个变量X和Y之间的相关性(线性相关)。本文通过介绍其 概念定义、数学公式 ,进而引出其 适用场合 ,并基于 MATLAB和C语言 对皮尔逊相关系数分别进行了 代码实现 。 在统计学中, 皮尔逊相关系数( Pearson correlation coefficient) ,又称皮尔逊积

    2024年02月06日
    浏览(42)
  • 使用Python计算皮尔逊相关系数,并用热力图展示

           由于是自我练习的笔记,所以这里先通过Pandas随机生成一部分时序数据,然后再调用corr()函数来计算皮尔逊相关系数,并把计算结果先展示输出出来,最后通过热力图的方式把计算结果展现出来。    下面是开发的具体过程: 1、首先导入需要的算法包 2、生成数据(

    2024年02月09日
    浏览(33)
  • 相关分析——皮尔逊相关系数、t显著性检验及Python实现

    (1)衡量事物之间或称变量之间线性相关程度的强弱,并用适当的统计指标表示出来的过程。 (2)比如家庭收入和支出、一个人所受教育程度与其收入、子女身高和父母身高的相关性。 (1)衡量变量之间相关程度的一个量值。 (2)相关系数r的数值范围是在-1到+1之间。 (

    2024年02月03日
    浏览(50)
  • 概率论:方差、标准差、协方差、皮尔逊相关系数、线性相关

    一个随机变量,的值的变化程度可以用方差计算:  ;其中 是期望。 另外一种等价表达式:      其中为均值,N为总体例数 我们举个例子: 服从均一分布,取值为0.1,0.2,0.3,0.4,0.5 ,每种值的概率是20%,可算出期望是0.3,那么方差就是: 标准差是方差的平方根,随机

    2024年02月09日
    浏览(47)
  • 【生物信息学】单细胞RNA测序数据分析:计算亲和力矩阵(基于距离、皮尔逊相关系数)及绘制热图(Heatmap)

      计算亲和力矩阵,一般按照以下步骤进行: 导入数据:加载单细胞RNA测序数据集。 数据预处理:根据需要对数据进行预处理,例如 基因过滤 、 归一化 等。 计算亲和力:使用合适的算法(例如, 欧几里德距离 、 Pearson相关系数 或其他距离/相似度度量)计算样本之间的

    2024年02月06日
    浏览(44)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包