首页 > 其他分享 >相关性检验

相关性检验

时间:2024-08-07 20:55:42浏览次数:17  
标签:Spearman Pearson frac 相关系数 检验 76 相关性 79

文章目录

在数据分析的广阔天地中,相关性检验是探索变量间关系的一把钥匙。本文将带领大家了解几种常用的相关性检验方法:Pearson、Spearman、Cochran’s Q、Kappa和Kendall。我们将深入每种方法的计算公式,并以几个实例,展示如何使用这些方法来计算相关性。

Pearson相关系数

Pearson相关系数是衡量两个连续变量线性相关程度的指标。其值介于-1到1之间,公式如下:

r Pearson = ∑ ( X i − X ˉ ) ( Y i − Y ˉ ) ∑ ( X i − X ˉ ) 2 ∑ ( Y i − Y ˉ ) 2 r_{\text{Pearson}} = \frac{\sum (X_i - \bar{X})(Y_i - \bar{Y})}{\sqrt{\sum (X_i - \bar{X})^2}\sqrt{\sum (Y_i - \bar{Y})^2}} rPearson​=∑(Xi​−Xˉ)2 ​∑(Yi​−Yˉ)2 ​∑(Xi​−Xˉ)(Yi​−Yˉ)​

其中, X i X_i Xi​ 和 Y i Y_i Yi​ 是观测值, X ˉ \bar{X} Xˉ 和 Y ˉ \bar{Y} Yˉ 是它们的均值。

Spearman等级相关系数

Spearman等级相关系数适用于非参数数据,衡量两个变量的单调关系。计算公式如下:

r Spearman = 1 − 6 ∑ d i 2 n ( n 2 − 1 ) r_{\text{Spearman}} = 1 - \frac{6 \sum d_i^2}{n(n^2 - 1)} rSpearman​=1−n(n2−1)6∑di2​​

d i d_i di​ 是排名差, n n n 是观测值数量。

Cochran’s Q检验

Cochran’s Q检验用于三个或更多个相关比例的差异性检验。其公式为:

Q = k − 1 2 + 1 2 × n ∑ ( p i − p overall ) 2 Q = k - \frac{1}{2} + \frac{1}{2 \times n} \sum (p_i - p_{\text{overall}})^2 Q=k−21​+2×n1​∑(pi​−poverall​)2

k k k 是比例的数量, p i p_i pi​ 是第 i i i 个比例, p overall p_{\text{overall}} poverall​ 是所有比例的平均值。

Kappa一致性系数

Kappa一致性系数用于衡量两个评估者在分类数据上的一致性。其计算公式如下:

κ = p o − p e 1 − p e \kappa = \frac{p_o - p_e}{1 - p_e} κ=1−pe​po​−pe​​

p o p_o po​ 是观察到的一致性比例, p e p_e pe​ 是偶然一致性的比例。

Kendall相关系数

Kendran的tau-b相关系数是衡量两个变量相关性的非参数方法。其计算公式如下:

τ b = 2 ( number of concordant pairs ) − 2 ( number of discordant pairs ) n ( n − 1 ) \tau_b = \frac{2(\text{number of concordant pairs}) - 2(\text{number of discordant pairs})}{n(n-1)} τb​=n(n−1)2(number of concordant pairs)−2(number of discordant pairs)​

实例分析

实例数据

学生测试1测试2
A7882
B8580
C9088
D6065
E7075

Pearson相关系数
X ˉ = 78 + 85 + 90 + 60 + 70 5 = 76 \bar{X} = \frac{78 + 85 + 90 + 60 + 70}{5} = 76 Xˉ=578+85+90+60+70​=76
Y ˉ = 82 + 80 + 88 + 65 + 75 5 = 79 \bar{Y} = \frac{82 + 80 + 88 + 65 + 75}{5} = 79 Yˉ=582+80+88+65+75​=79
r Pearson = ( 78 − 76 ) ( 82 − 79 ) + . . . + ( 70 − 76 ) ( 75 − 79 ) ( ( 78 − 76 ) 2 + . . . + ( 70 − 76 ) 2 ) ( ( 82 − 79 ) 2 + . . . + ( 75 − 79 ) 2 ) r_{\text{Pearson}} = \frac{(78-76)(82-79) + ... + (70-76)(75-79)}{\sqrt{((78-76)^2 + ... + (70-76)^2)((82-79)^2 + ... + (75-79)^2)}} rPearson​=((78−76)2+...+(70−76)2)((82−79)2+...+(75−79)2) ​(78−76)(82−79)+...+(70−76)(75−79)​
r Pearson = 0.967 r_{\text{Pearson}} = 0.967 rPearson​=0.967(四舍五入到小数点后三位)

Spearman等级相关系数
等级分配:

  • 测试1: A(3), B(5), C(5), D(1), E(2)
  • 测试2: A(4), B(3), C(5), D(1), E(3)

计算 d i d_i di​并应用公式,我们得到:
r Spearman = 1 r_{\text{Spearman}} = 1 rSpearman​=1(因为排名完全一致)

Kendall相关系数
计算一致对和不一致对的数量:

  • 一致对:(A,B), (B,C), (C,E) - 3对
  • 不一致对:(A,C), (A,D), (A,E), (B,D), (B,E), (D,E) - 6对
    τ b = 2 ( 3 ) − 2 ( 6 ) 5 ( 5 − 1 ) = − 4 8 = − 0.5 \tau_b = \frac{2(3) - 2(6)}{5(5-1)} = -\frac{4}{8} = -0.5 τb​=5(5−1)2(3)−2(6)​=−84​=−0.5(负相关)

Python代码

import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
from scipy.stats import pearsonr, spearmanr

# 定义数据
data = {
    '测试1': [78, 85, 90, 60, 70],
    '测试2': [82, 80, 88, 65, 75]
}

# 创建DataFrame
df = pd.DataFrame(data)

# 计算Pearson和Spearman相关系数
pearson_corr, _ = pearsonr(df['测试1'], df['测试2'])
spearman_corr, _ = spearmanr(df['测试1'], df['测试2'])

# 创建相关性矩阵
corr_matrix = {
    '测试1': [pearson_corr, spearman_corr],
    '测试2': [spearman_corr, 1]  # 假设测试1和测试2完全相关
}

# 创建DataFrame
corr_df = pd.DataFrame(corr_matrix, index=['测试1', '测试2'])

# 绘制热力图
sns.heatmap(corr_df, annot=True, cmap='coolwarm', fmt=".2f")
plt.title('相关性热力图')
plt.show()

总结

通过上述分析,我们可以看到不同相关性检验方法如何揭示变量间的关系。每种方法都有其特定的应用场景和优势。选择合适的方法来分析你的数据,可以更准确地理解变量间的相互作用。

标签:Spearman,Pearson,frac,相关系数,检验,76,相关性,79
From: https://blog.csdn.net/qq_57143062/article/details/141000341

相关文章

  • 如何增强LangChain和FAISS多查询检索的相关性
    我正在为一个专注于冥想和灵性的项目开发一个使用LangChain和FAISS的多查询检索系统。我当前的设置涉及生成用户查询的变体以改进文档检索。但是,我遇到一个问题,即检索到的文档通常与查询主题无关。对于嵌入,我使用“经济嵌入文本”模型。我已将335本PDF书籍嵌入到......
  • Python数据预处理+正态性检验+异常值处理+Q-Q图-K-S检验+相关性分析(2024MathorCup A题
    #数据预处理#正态性检验、Q-Q图、箱线图、直方图、相关性分析#Q-Q图importnumpyasnpimportpandasaspdimportmatplotlib.pyplotaspltfromscipy.statsimportnormfromscipy.statsimportprobplota=pd.read_excel('附件1:小区基本信息.xlsx',engine='openpyxl'......
  • 绘制伊朗温度与野火之间的相关性
    这个想法是为了找到伊朗野火与气温之间的相关性。我使用了每场野火的坐标来对抗伊朗的温度,我的意思是几何形状,但p值非常低,几乎所有值都为零。我尝试了Geometry.bound函数,仅获取野火,但数据为零且p值非常小很高兴帮助确定伊朗野火与温度之间的相关性。根据的描述,似......
  • 二分模块的相关性
    在寻找保持列表排序而不考虑插入和删除的方法时,我遇到了bisect和sortedcontainers模块。bisect的insort功能是O(n)因为它结合了bisect_leftO(logn)和|||然而,一个等效的操作insertO(n)defins......
  • 医学实验室检验系统源码 C#语言LIS系统全套源码,多家大型综合医院应用案例,适合二次开发
    实验室管理信息系统LIS源码,采用.NetC#语言开发,C/S架构。支持DB2,Oracle,MSSQLServer等主流数据库。(全套LIS系统源码,自主版权,多家大型综合医院应用案例,适合二次开发,项目应用)LIS系统菜单功能:1、系统维护基础数据维护、项目相关维护、人员权限维护、打印模板维护、微生物维......
  • 计算机网络中的检验和(checksum)(包括计算文件的检验和附有c++代码)
    介绍:检验和(checksum),在数据处理和数据通信领域中,用于校验目的地一组数据项的和。它通常是以十六进制为数制表示的形式。如果校验和的数值超过十六进制的FF,也就是255.就要求其补码作为校验和。通常用来在通信中,尤其是远距离通信中保证数据的完整性和准确性。(此引用了检验和的百......
  • ES相关性(_score)
    什么是相关性相关度是指两个事物间相互关联的程度,在检索领域特指检索请求与检索结果之间的相关程度。默认情况下,返回结果是按相关性倒序排列的。但什么是相关性?相关性如何计算?每个文档都有相关性评分,用一个正浮点数字段_score来表示。_score的评分越高,相关性越高。查询......
  • R语言广义加性混合模型(GAMM)分析长沙气象因子、空气污染、PM2.5浓度、显著性检验、逐
    全文链接:https://tecdat.cn/?p=32981原文出处:拓端数据部落公众号气候变化和空气污染对现代社会产生了越来越大的影响。在这种背景下,研究气象和空气污染之间的关系以及其对PM2.5浓度的影响变得非常重要。为了更好地理解和解释这些关系,广义加性混合模型(GAMM)成为一种强大的工具。......
  • 【Copula】考虑风光联合出力和相关性的Copula场景生成(Matlab代码实现)
     ......
  • AI - 假设检验
    假设检验的步骤 实例讲解第三步:由于一般的显著性水平定为0.05,因此在正态分布图中,对应的接受域是0.95,对应着-1.96~1.96的红色阴影区域第四步:判断方法1——计算出样本统计值根据第二步骤的公式,将样本所有的值代入该公式,计算出样本统计值=2.23,落在了拒绝域判断方法2——计......