从零开始学统计 04 | 协方差与相关性分析

2024-06-02 22:58

本文主要是介绍从零开始学统计 04 | 协方差与相关性分析,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、老板的任务

老板今天又给一个任务:

计算肝脏细胞中 X 基因与 Y 基因的关系。

现在,两个基因在各个细胞中的表达值都有了。

绘制不同细胞中 X,Y 基因的表达值在坐标轴上。

计算 X 基因和 Y 基因在5个细胞中的均值,标准差。

mark

因为这些测量值都是来自同一个细胞,所以我们可以成对来看:

mark

那么这样成对的测量可以告诉我们哪些信息呢?

现在,先将一对细胞连接,绘制一个点

mark

绘制完成,我们发现,X 基因相对较低的细胞对应的 Y 基因的值也较低,两个基因出现步调一致的表达情况,这可以用一条线来表示:

mark

不难看到,这条线是正斜率,代表着细胞中的 X 基因表达高,Y基因同样会表达高,同样表达低也会出现相同的情况。说明两基因具有正趋势关系

来看一个相反的情况:

mark

上图中的线为负斜率,告诉我们细胞中的 X 基因表达高,Y基因会表达低,出现相反的表达情况。说明两基因具有负趋势关系

第三种情况是,一个基因相对另一个基因,并没有显著变化。说明两基因无趋势关系

mark

mark

我们现在总结出 X 基因相对 Y 基因的关系有以上三种情况:

  • 正趋势关系
  • 负趋势关系
  • 无趋势关系

二、协方差

为了去说明 X 基因相对 Y 基因的趋势关系,我们需要一个数学上的解释:

首先计算 X基因与 Y 基因的均值

mark

现在计算一个点的与两基因均值的差值:

mark

将值代入mark计算:(3-17.6)x(12-24.4)= -14.6 x -12.4 = 181

如果将五个点都计算一遍,得到:

mark

现在可以计算**协方差(Covariance)**了:

mark

会发现:

mark

这些点所在象限,最终的值都为正值,也就是说这五个点对总协方差的贡献都是正值。

协方差值为正,斜率为正,这告诉我们当协方差为正时,就可以将二者的关系分类为正趋势。如果协方差为负,则相反。

协方差的优缺点

但是,协方差值并不能告诉我们表示关系的直线的斜率是陡峭还是平缓,而且也不能反应点距离线是远还是近。协方差唯一能告诉我们的是关系的斜率为正还是负。

但是协方差还有一个很大的缺点,我们接下来讨论:

比如现在同样计算两个基因的协方差,我们将左边的数据范围扩大一倍,也就是从40 -> 80。

接下来,我们继续计算同样的两个基因的协方差,虽然线相对位置没发生变化,但是会发现协方差会扩大4倍。

mark

就很有意思,我们唯一改变的只是数据点的值范围,数据点的关系并没有变化,但是协方差依旧在改变。

也就是说,协方差对于数据范围更敏感,而不是数据关系,这就使得它很难用于关系的描述,比如是否接近表示关系的虚线,以及和虚线间的距离。

虽然这样,但是协方差并不是一无是处,相反它是各种分析的基础,比如主成分分析,相关性分析。

三、相关性分析

1. 相关性强弱

基于趋势线,我们可以根据某个 Y 基因值,预测 X 基因的值。

当然,也可以用 X 基因来预测 Y 基因,就行下图这样的:

mark

如果该数据越接近趋势线,根据 X 基因值去预测 Y 基因值就会落在较小范围内,那么 X 基因就会告诉我们更详细的 Y 基因信息。也可以说, X 基因对 Y 基因的关系相对较强。

相反,距离趋势线较远,我们会猜测 Y 基因值会落在更大的范围内:

mark

这就代表 X 基因和 Y 基因间的关系相对较弱。

但是这里要注意描述问题,以上是用 X 基因根据趋势线和数值去预测 Y 基因的值。而不是代表着 X 基因值会导致 Y 基因值的变化。

我们现在得到可以量化关系强度的分类:

  • 弱相关,较小的相关值
  • 强相关,较大的相关值

mark

2. P值

假设一个极端情况,所有点可以被正斜率的直线通过,这时的相关性为 1

mark

无论数据关联的大小如何,只要具有正斜率的直线可以遍历所有数据,和斜率无关,相关性都为1

mark

还有这样的,相关性也是为1

mark

现在考虑个问题,如果数据集中只有两个值,就像下面这样:

mark

类似这样的,其实并不能作为趋势线,因为两点绘制为线,这个随机性太大。也就是数据量太小的话,并不能代表数据总体。

测得的数据量越多,得到趋势线后,我们对于预测到正确的值越有信心,这时的P值越小。

mark

上图中,对于第三个数据量多,P值很小,我们最有信心得出正确的预测值。

相关性代表了二者的关系,上图中的相关性很差,即使增加再多的样本量,也不会改变二者的关系。虽然增加了我们对预测的信心,可信度增加了,但是得到的结果是二者的关系依然很糟。

3. 总结

趋势线为负时,相关性相反

趋势线为正时,相关性为正

mark

但是,我们大多数情况遇到的是数据分布在趋势线的两侧,

mark

相关性值越接近 0 时,在拟合时,效果就会越差。

mark

当相关性值为 0 时,就没有关系了。

mark

现在可以看看相关性的公式了:

mark

  • 分子是二者的协方差,用来确定斜率的正负
  • 分母是标准差,使相关性质取值范围为-1到1。而且可以确保数据规模不影响相关性值
4. R平方

绘制小鼠编号和小鼠体重的散点图,计算点与体重均值的距离,计算方差:

mark

小鼠体重与小鼠体型的散点图,同样绘制点与均值的距离,计算方差:

mark

可以发现,虽然点在 X 轴方向的排列顺序变了,但是方差并不会改变。

我们所要做的就是根据数据拟合一条直线,可以绘制出这根蓝线:

mark

看起来拟合直线(蓝线)比均值直线(黑线)更好地贴合数据。

mark

  • Var(mean):数据值与其平均值的差的平方和,用来衡量数据点离均值线的远近
  • Var(line):数据值与蓝线的差的平方和,用来衡量数据点离拟合线的远近

最终 R^2 的范围是 0 到 1,因为拟合直线附近的变化,永远不会大于,以平均线为基准衡量附近的变化。

mark

最后,获得 R^2 = 81%,代表着蓝线与数据点的差值平方和比均值的对应数值小81%。也就是说,小鼠的大小与重量的相关性能够解释总差异的 81%,大部分数据变化都可以有小鼠体重和体型大小的关系来解释。

假设研究小鼠体重和嗅探石头的花费时间的关系:

mark

可以看到拟合出的直线也是一个很大的值,计算得到的 R^2 只有 6%,代表这条拟合线只比平均值多解释了6%的差异,也就是说,X与 Y 二者的相关性仅仅能解释总差异的 6%,意味着数据中几乎没有任何差异可以用 X 变量来解释。

R^2 可以更好的直观解释数据的相关性,比如:

R^2 = 0.7^2 = 0.5,50%的差异可以用变量相关性来解释

R^2 = 0.5^2 = 0.25,25%的差异可以用变量相关性来解释

但是,R^2并没有方向,这时候需要结合R,描述这两个变量是正相关或负相关的。

R平方是两个变量间相关性能够解释总体差异的百分比

如果有相关系数 R 时,需要计算 R 平方。

致谢:

https://www.youtube.com/channel/UCtYLUTtgS3k1Fg4y5tAhLbw

这篇关于从零开始学统计 04 | 协方差与相关性分析的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1025326

相关文章

hdu1496(用hash思想统计数目)

作为一个刚学hash的孩子,感觉这道题目很不错,灵活的运用的数组的下标。 解题步骤:如果用常规方法解,那么时间复杂度为O(n^4),肯定会超时,然后参考了网上的解题方法,将等式分成两个部分,a*x1^2+b*x2^2和c*x3^2+d*x4^2, 各自作为数组的下标,如果两部分相加为0,则满足等式; 代码如下: #include<iostream>#include<algorithm

性能分析之MySQL索引实战案例

文章目录 一、前言二、准备三、MySQL索引优化四、MySQL 索引知识回顾五、总结 一、前言 在上一讲性能工具之 JProfiler 简单登录案例分析实战中已经发现SQL没有建立索引问题,本文将一起从代码层去分析为什么没有建立索引? 开源ERP项目地址:https://gitee.com/jishenghua/JSH_ERP 二、准备 打开IDEA找到登录请求资源路径位置

SWAP作物生长模型安装教程、数据制备、敏感性分析、气候变化影响、R模型敏感性分析与贝叶斯优化、Fortran源代码分析、气候数据降尺度与变化影响分析

查看原文>>>全流程SWAP农业模型数据制备、敏感性分析及气候变化影响实践技术应用 SWAP模型是由荷兰瓦赫宁根大学开发的先进农作物模型,它综合考虑了土壤-水分-大气以及植被间的相互作用;是一种描述作物生长过程的一种机理性作物生长模型。它不但运用Richard方程,使其能够精确的模拟土壤中水分的运动,而且耦合了WOFOST作物模型使作物的生长描述更为科学。 本文让更多的科研人员和农业工作者

MOLE 2.5 分析分子通道和孔隙

软件介绍 生物大分子通道和孔隙在生物学中发挥着重要作用,例如在分子识别和酶底物特异性方面。 我们介绍了一种名为 MOLE 2.5 的高级软件工具,该工具旨在分析分子通道和孔隙。 与其他可用软件工具的基准测试表明,MOLE 2.5 相比更快、更强大、功能更丰富。作为一项新功能,MOLE 2.5 可以估算已识别通道的物理化学性质。 软件下载 https://pan.quark.cn/s/57

衡石分析平台使用手册-单机安装及启动

单机安装及启动​ 本文讲述如何在单机环境下进行 HENGSHI SENSE 安装的操作过程。 在安装前请确认网络环境,如果是隔离环境,无法连接互联网时,请先按照 离线环境安装依赖的指导进行依赖包的安装,然后按照本文的指导继续操作。如果网络环境可以连接互联网,请直接按照本文的指导进行安装。 准备工作​ 请参考安装环境文档准备安装环境。 配置用户与安装目录。 在操作前请检查您是否有 sud

flume系列之:查看flume系统日志、查看统计flume日志类型、查看flume日志

遍历指定目录下多个文件查找指定内容 服务器系统日志会记录flume相关日志 cat /var/log/messages |grep -i oom 查找系统日志中关于flume的指定日志 import osdef search_string_in_files(directory, search_string):count = 0

hdu4267区间统计

题意:给一些数,有两种操作,一种是在[a,b] 区间内,对(i - a)% k == 0 的加value,另一种操作是询问某个位置的值。 import java.io.BufferedInputStream;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import

hdu4417区间统计

给你一个数列{An},然后有m次查询,每次查询一段区间 [l,r] <= h 的值的个数。 import java.io.BufferedInputStream;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamRead

hdu3333区间统计

题目大意:求一个区间内不重复数字的和,例如1 1 1 3,区间[1,4]的和为4。 import java.io.BufferedInputStream;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;

线性因子模型 - 独立分量分析(ICA)篇

序言 线性因子模型是数据分析与机器学习中的一类重要模型,它们通过引入潜变量( latent variables \text{latent variables} latent variables)来更好地表征数据。其中,独立分量分析( ICA \text{ICA} ICA)作为线性因子模型的一种,以其独特的视角和广泛的应用领域而备受关注。 ICA \text{ICA} ICA旨在将观察到的复杂信号