7. R语言【相关性分析函数】:cov、cor、pcor 和 【相关性检验函数】:cor.test、corr.test、pcor.test

您所在的位置:网站首页 花滑cor是什么比赛 7. R语言【相关性分析函数】:cov、cor、pcor 和 【相关性检验函数】:cor.test、corr.test、pcor.test

7. R语言【相关性分析函数】:cov、cor、pcor 和 【相关性检验函数】:cor.test、corr.test、pcor.test

2023-08-04 07:22| 来源: 网络整理| 查看: 265

b站课程视频链接: https://www.bilibili.com/video/BV19x411X7C6?p=1 腾讯课堂(最新,但是要花钱,我花99😢😢元买了,感觉讲的没问题,就是知识点结构有点乱,有点废话): https://ke.qq.com/course/3707827#term_id=103855009   本笔记前面的笔记参照b站视频,【后面的画图】参考了付费视频 笔记顺序做了些调整【个人感觉逻辑顺畅】,并删掉一些不重要的内容,以及补充了个人理解 系列笔记目录【持续更新】:https://blog.csdn.net/weixin_42214698/category_11393896.html

文章目录 相关性分析函数1. 计算协方差:cov()2. 计算相关性系数:cor()3. 计算偏相关系数:ggm包中的pcor() 相关性检验函数1. 相关性的检验:cor.test()2. 递归相关性的检验:corr.test()3. 偏相关系数的检验:ggm包中的pcor.test()

协方差 ——英文: covariance 相关性系数 ——英文:Correlation coefficient 必须要看懂下面这个博客: 详细见:5. 统计学基础2:协方差、相关系数、协方差矩阵

相关性分析:是指对两个或者多个具备相关性的变量元素进行分析,从而衡量两个变量因素的相关密切程度。 相关性元素之间,需要存在一定的联系才可以进行相关性分析,简单来说就是变量之间是否有关系(也就是说需要先进行独立检测之后才能进行相关分析)。

相关系数的大小表示相关性的大小,相关系数包括: pearson相关系数、spearman相关系数、kendall相关系数、偏相关系数、多分格相关系数和多系列相关系数

相关性分析函数 1. 计算协方差:cov()

cov()函数可以用来计算协方差,可以用来衡量两个变量的整体误差

在这里插入图片描述

2. 计算相关性系数:cor()

与独立性检验不同,相关性分析中每种方法都没有独立的函数,这里计算相关性系数都使用同一个函数:cor()函数。

常用:cov(x, y = NULL, use = "", method = "") x:数字矢量、矩阵或数据帧。 y:NULL(默认值)或具有与x兼容维度的向量、矩阵或数据帧。默认值相当于y=x(但更有效)。 na.rm:是否应删除缺失的值? use:一个可选字符串,给出了在缺少值的情况下计算协方差的方法。 这必须是字符串“everything”、“all.obs”、“complete.obs”、“na.or.complete”或“pairwise.complete.ob”之一的缩写。 method:指示要计算哪个相关系数(或协方差)的字符串。“pearson”(默认)、“kendall”或“spearman”之一,可以缩写。 V:对称数字矩阵,通常是正定的,如协方差矩阵。

此处我们使用state.x77数据作为实例数据(这是一个矩阵数据):

在这里插入图片描述 设相关系数为η, η 的取值范围为 [ − 1 , 1 ] 当 η 为正值时,X、Y 正相关,值越大正相关性越强; 当 η 为负值时,X 、Y负相关,值越小负相关性越强 当 η 趋于 0 时,基本不相关。当 η = 0 时, X、Y 不相关

cor()函数只能计算三种相关系数,其他相关系数的计算可以通过R的拓展包

3. 计算偏相关系数:ggm包中的pcor()

偏相关系数:是指在控制一个或者多个变量时,剩余其他变量之间的相互关系

pcor()函数需要输入两个重要的参数: 1️⃣第一个参数是一个数值向量(前两个数值表示要计算相关系数的下标,其余的数值为条件变量的下标) 2️⃣第二个参数是cov( )函数计算出来的协方差结果

比如此处我们想控制收入水平、文盲率和高中毕业率的影响,看人口(第一列)和谋杀率(第五列)之间的关系(先获取列名,不然容易混): 在这里插入图片描述

相关性检验函数 1. 相关性的检验:cor.test()

在进行相关性分析之后,对相关性进行检验,cor.test()函数可用于相关性的检验。该函数有四个比较重要的选项参数,

cor.test(x, y, alternative = c("two.sided", "less", "greater"), method = c("pearson", "kendall", "spearman"), exact = NULL, conf.level = 0.95, continuity = FALSE, ...) 1. 其中x和y是需要检测的相关性变量 2. alternative是用来指定进行双侧检验还是单侧检验 two.sided代表分别检测正负相关性,greater代表正相关,less代表负相关。 3.Method选项用于指定用哪种相关系数,可选的有pearson相关系数、spearman相关系数、kendall相关系数。

我们使用state.x77数据检测一下谋杀率与文盲率之间的关系 在这里插入图片描述

Cor.test()只能一次性检测一组变量的关系

2. 递归相关性的检验:corr.test()

psych包中的corr.test()函数,可以一次性进行多个变量的检验,这个函数还可以进行递归操作

> library(psych)

在这里插入图片描述 图片下面绿色的是cor.test()计算出来的p-value值

3. 偏相关系数的检验:ggm包中的pcor.test()

使用ggm包中的pcor.test()函数,要先用pcor( )计算偏相关系数

> pcor(c(1,5,2,3,6),cov(state.x77)) [1] 0.3462724

再用pcor.test() 对其进行检验 在这里插入图片描述

返回三个值,分别是t检验,自由度和p-value值



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3