r语言系统计算上是奇异的_R语言相关性分析(上)
接触组学数据这么久了,大家一定少不了分析各种相关性,譬如大到几个转录组样本的整体相关性分析,小到挑选了一些候选基因看它们在不同样本中的表达模式相关性。今天这篇文章给大家讲讲如何利用R语言进行相关性分析。
1 前言组学数据分析主要有两类,一类是基于被研究对象的位置和序列。一类是基于算法。前者比如说lncRNA与mRNA的antisense和cis的作用关系,miRNA和piRNA的靶向基因预测等。后者就比如说机器学习、降维、聚类等算法。
其中机器学习是通过程序不断迭代来寻找合适的模型。
降维就是将高维数据通过计算,在尽量保证数据原始分布特征的情况下,将数据映射在低维的刻度。
聚类方法很多,常用的是计算欧式距离后,用K-mean聚类算法进行聚类。
K-mean聚类算法就是先随机挑选k个中心,按照距离远近分别聚在一起,然后在聚类的簇里重新选择平均值作为中心点,重新聚类,再不断迭代设置的次数,最后的结果就是聚类结果。
当然如果画树,还涉及分类树的算法。简而言之,麻烦,不详细说了。
相关性分析,这就是本文要详细说的了。
2 相关性分析相关性分析是一种统计技术。
相关性分析,就是衡量两个变量之间的依赖性强弱
相关性:可以显示两个变量是否相关以及如何相关。例如,身高和体重是相关的; 较高的人往往有更大的体重。那么这种关系就是正相关。那么再例如汽车排量与每升汽油的里程,是负相关的,汽车排量越大,每升汽油跑的里程就越短。
尽管这种相关性非常明显,但您的数据可能包含未预料到的相关性。您可能还会产生怀疑,怀疑两个变量之间是否存在相关性,或者不知道两者之间的依赖和联系程度。这个时候,就需要一种可以量化的指数分析。相关分析可以帮助我们更好地理解数据。
但是,使用相关性分析的时候,我们需要记住的一个关键事项是:永远不要假设相关性就一定意味着A变量的变化会导致B变量的变化。
多年来个人电脑和运动鞋的销售都急剧增长,并且它们之间存在高度相关性,但你不能认为购买电脑会导致人们购买运动鞋(反之亦然)。但可能还是可能存在相同的调节因素,比如社会生产力的提高和经济状况的改善。
1
正负相关性
当两个变量之间存在非常强烈的相互依赖关系的时候,我们就可以说两个变量之间的存在高度相关性。
若两组的值一起增大,我们称之为正相关,若一组的值增大时,另一组的值减小,我们称之为负相关。
本次我们用R来进行计算和绘图,所用的数据是R自带的mtcars数据。
> mtcars
> head(mtcars)
mpg cyl disp hp drat wt qsec vs am gear carb
Mazda RX4 21.0 6 160 110 3.90 2.620 16.46 0 1 4 4
Mazda RX4 Wag 21.0 6 160 110 3.90 2.875 17.02 0 1 4 4
Datsun 710 22.8 4 108 93 3.85 2.320 18.61 1 1 4 1
Hornet 4 Drive 21.4 6 258 110 3.08 3.215 19.44 1 0 3 1
Hornet Sportabout 18.7 8 360 175 3.15 3.440 17.02 0 0 3 2
Valiant 18.1 6 225 105 2.76 3.460 20.22 1 0 3 1
上一篇: 使用Python条件判断实现简单的电话号码归属地判断
下一篇: R语言相关性分析及步骤