本篇文章为大家展示了如何进行大数据中R语言的相关性分析及检验,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
相关系数可以用来描述定量变量之间的关系。结果的正负号分别表明正相关或负相关,数值的大小则表示相关关系的强弱程度。
R可以计算多种相关系数,今天主要介绍常见的三种:Pearson相关系数、Spearman相关系数 和 Kendall相关系数。这三种相关系数均可以通过R语言的cor函数计算,method函数指定即可。
一 相关性分析
1.1 Pearson相关系数
度量两个连续变量之间的线性相关程度,需要两个变量的标准差都不为零。此外皮尔逊相关系数适用条件为:
1)变量之间为线性关系,且均为连续数据。
2)变量总体呈正态分布,或接近正态。
x<-mtcars[,c("disp","hp","drat")]y<-mtcars[,c("disp","hp","drat")]cor(x,y,method = "pearson") disp hp dratdisp 1.0000000 0.7909486 -0.7102139hp 0.7909486 1.0000000 -0.4487591drat -0.7102139 -0.4487591 1.0000000
1.2 Spearman等级相关系数
衡量非线性关系变量间的相关系数,是一种非参数的统计方法。变量是成对的等级评定,或者是由连续变量观测资料转化得到的等级资料。
x<-mtcars[,c("cyl","gear","carb")]y<-mtcars[,c("cyl","gear","carb")]cor(x,y,method = "spearman") cyl gear carbcyl 1.0000000 -0.5643105 0.580068gear -0.5643105 1.0000000 0.114887carb 0.5800680 0.1148870 1.000000
Spearman等级相关系数是根据每个值所处的排列位置的差值,求相关性系数。可用于计算实验数据分析中的不同组学数据之间的相关性。
1.3 Kendall秩相关系数
也是一种非参数的等级相关度量,类似Spearman相关系数。对象是分类变量。可以无序,性别(男、女)、血型(A、B、O、AB);可以有序,评分(优、中、差)等。
X<- c(3,1,2,2,1,3)Y<- c(1,2,3,2,1,1)cor(X,Y,method="kendall")[1] -0.2611165
假设X Y 分别为两个裁判对选手的评级---3为优,2为中,1为差,结果可以看出两位裁判对选手们的看法呈相反趋势,但相反程度不大。
二 相关性显著性检验
2.1 单次相关关系检验
使用cor.test()函数,cor.test(x,y,alternative=,method=)。
其中的x和y为要检验相关性的变量,alternative指定进行双侧检验或单侧检验(取值"two.side"、"less"或"greater"),method指定计算的相关类型("pearson"、 "kendall"或"spearman")。
cor.test(mtcars[,"disp"],mtcars[,"hp"])
2.2 计算相关矩阵并进行显著性检验
psych包中 corr.test()函数。corr.test(x, y = NULL, use = "pairwise",method="pearson",adjust="holm",alpha=.05,ci=TRUE,minlength=5)
corr.test(mtcars[,1:10], adjust = "none", use = "complete")
可得到矩阵数据集中两两变量之间得相关系数以及显著性检验得P值。
OK, 注意要根据变量的实际情况选择合适的相关系数以及显著性检验的计算方式。
之前介绍了绘图系列|R-corrplot相关图进行相关系数的可视化,后面也会再介绍一些其他的相关系数可视化的函数。
本文分享自微信公众号 - 生信补给站(Bioinfo_R_Python)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。
上述内容就是如何进行大数据中R语言的相关性分析及检验,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。