衡量随机变量相关性的方法主要有三种:pearson相关系数,spearman相关系数,kendall相关系数:

1.       pearson相关系数,亦即皮尔逊相关系数

pearson相关系数用来衡量两个随机变量之间的相关性

R语言中求两个随机变量pearson相关系数的函数:

1//赋予a,b向量值

2a<-c(1,2,3)

3b<-c(11,12,14)

4

5//计算pearson相关系数

6cor.test(a,b,method="pearson")

结果

Pearson's product-moment correlation

data:  a and b

t = 5.1962, df = 1, p-value = 0.121

alternative hypothesis: true correlation is not equal to 0

sample estimates:

cor

0.9819805

总结

P=0.121, cor=0.9819805

2.       spearman相关系数,亦即秩相关系数

spearman和kendall都是等级相关系数,亦即其值与两个相关变量的具体值无关,而仅仅与其值之间的大小关系有关。

spearman相关系数,亦即秩相关系数,根据随机变量的等级而不是其原始值衡量相关性的一种方法。

spearman相关系数的计算可以由计算pearson系数的方法,只需要把原随机变量中的原始数据替换成其在随机变量中的等级顺序即可:

(1,10,100,101)替换成(1,2,3,4)

(21,10,15,13)替换成(4,1,3,2)

然后求替换后的两个随机变量的pearson相关系数即可.

R语言中求两个随机变量的spearman相关系数的函数:

1 //赋予a,b向量值
2 a<-c(1,10,100,101)
3 b<-c(21,10,15,13)
4
 5 //计算spearman相关系数
6 cor.test(a,b,method="spearman")
7 rho=-0.4
8
 9 //用替换后的向量的pearson相关系数进行验证
10 e<-c(1,2,3,4)
11 f<-c(4,1,3,2)
12 cor.test(e,f,method="pearson")
13 cor=-0.4

结果

Spearman's rank correlation rho

data:  a and b

S = 14, p-value = 0.75

alternative hypothesis: true rho is not equal to 0

sample estimates:

rho

-0.4

总结 p=0.75,rho=0.4

3.       kendall相关系数,亦即和谐系数

kendall相关系数又称作和谐系数,也是一种等级相关系数

对于X,Y的两对观察值Xi,Yi和Xj,Yj,如果Xi并且Xj或者Xi>Yi并且Xj>Yj,则称这两对观察值是和谐的,否则就是不和谐的.

R语言中计算kendall相关系数的函数:

1 //赋予a,b向量值
2 a<-c(1,2,3)
3 b<-c(1,3,2)
4
5 //计算kendall相关系数
6 cor.test(a,b,method="kendall")
7 tau=0.3333333333
结果

Kendall's rank correlation tau

data:  a and b

T = 2, p-value = 1

alternative hypothesis: true tau is not equal to 0

sample estimates:

tau

0.3333333

总结:p=1,tau=0.3333333

来源:http://blog.sina.com.cn/s/blog_5d188bc40102vuvj.html

R语言做相关性分析的更多相关文章

  1. 用R语言 做回归分析

    使用R做回归分析整体上是比较常规的一类数据分析内容,下面我们具体的了解用R语言做回归分析的过程. 首先,我们先构造一个分析的数据集 x<-data.frame(y=c(102,115,124,1 ...

  2. R语言做一元线性回归

    只有两个变量,做相关性分析,先来个一元线性回归吧 因为未处理的x,y相关性不显著,于是用了ln(1+x)函数做了个处理(发现大家喜欢用ln,log,lg,指数函数做处理),处理完以后貌似就显著了..虽 ...

  3. 利用R语言打造量化分析平台

    利用R语言打造量化分析平台 具体利用quantmod包实现对股票的量化分析 1.#1.API读取在线行情2.#加载quantmod包3.if(!require(quantmod)){4. instal ...

  4. R语言重要数据集分析研究——需要整理分析阐明理念

    1.R语言重要数据集分析研究需要整理分析阐明理念? 上一节讲了R语言作图,本节来讲讲当你拿到一个数据集的时候如何下手分析,数据分析的第一步,探索性数据分析. 统计量,即统计学里面关注的数据集的几个指标 ...

  5. R语言做文本挖掘 Part5情感分析

    Part5情感分析 这是本系列的最后一篇文章,该.事实上这种单一文本挖掘的每一个部分进行全部值获取水落石出细致的研究,0基础研究阶段.用R里面现成的算法,来实现自己的需求,当然还參考了众多网友的智慧结 ...

  6. R语言重要数据集分析研究——R语言数据集的字段含义

    R语言数据集的字段含义 作者:马文敏 选择一种数据结构来储存数据 将数据输入或导入到这个数据结构中 数据集的概念 数据集通常是有数据结构的一个矩形数组,行表示规则,列表示变量. 不同的行业对数据集的行 ...

  7. [译]用R语言做挖掘数据《五》

    介绍 一.实验说明 1. 环境登录 无需密码自动登录,系统用户名shiyanlou,密码shiyanlou 2. 环境介绍 本实验环境采用带桌面的Ubuntu Linux环境,实验中会用到程序: 1. ...

  8. [译]用R语言做挖掘数据《二》

    数据探索 一.实验说明 1. 环境登录 无需密码自动登录,系统用户名shiyanlou,密码shiyanlou 2. 环境介绍 本实验环境采用带桌面的Ubuntu Linux环境,实验中会用到程序: ...

  9. [译]用R语言做挖掘数据《一》

    介绍 一.实验说明 1. 环境登录 无需密码自动登录,系统用户名shiyanlou,密码shiyanlou 2. 环境介绍 本实验环境采用带桌面的Ubuntu Linux环境,实验中会用到程序: 1. ...

随机推荐

  1. Mysql缓存中innodb_buffer_pool与Qcache的区别

    innodb buffer pool和Qcache的缓存区别? 1.Qcacche缓存的是SQL语句及对应的结果集,缓存在内存,最简单的情况是SQL一直不重复,那Qcache的命令率肯定是0; 2.b ...

  2. php框架安装

    安装yii框架 跳转到composer.phar目录 cd C:\ProgramData\ComposerSetup\bin 安装yii2高级版 php composer.phar create-pr ...

  3. BZOJ4892:[TJOI2017]dna(hash)

    Description 加里敦大学的生物研究所,发现了决定人喜不喜欢吃藕的基因序列S,有这个序列的碱基序列就会表现出喜欢吃藕的性状,但是研究人员发现对碱基序列S,任意修改其中不超过3个碱基,依然能够表 ...

  4. BZOJ4735:你的生命已如风中残烛(组合数学)

    Description 众所周知,萌萌哒六花不擅长数学,所以勇太给了她一些数学问题做练习.但是今天六花酱不想做数学题,于是他们开始打牌. 现在他们手上有m张不同的牌,牌有两种:普通牌和功能牌.功能牌一 ...

  5. BZOJ5368:[PKUSC2018]真实排名(组合数学)

    Description 小C是某知名比赛的组织者,该比赛一共有n名选手参加,每个选手的成绩是一个非负整数,定义一个选手的排名是:成绩不小于他的选手的数量(包括他自己). 例如如果333位选手的成绩分别 ...

  6. day3-作业及答案

    作业:1.用python实现冒泡排序# [50,20,30,10]## 升序:谁大谁交换到后面# 降序:谁大谁交换到前面## 以升序为例# 第1趟:# [20,50,30,10]# [20,30,50 ...

  7. centos下安装pip-python

    pyspider需要通过pip工具安装 首先检查linux有没有安装python-pip包,直接执行 yum install python-pip 没有python-pip包就执行命令 yum -y ...

  8. Scrapy 框架(二)数据的持久化

    scrapy数据的持久化(将数据保存到数据库) 一.建立项目 1.scrapy startproject dushu 2.进入项目 cd dushu 执行:scrapy genspider -t cr ...

  9. 微信小程序开发 [05] wx.request发送请求和妹纸图

    1.wx.request 微信小程序中用于发起网络请求的API就是wx.request了,具体的参数太多,此处就不再一一详举了,基本使用示例如下: wx.request({ url: 'test.ph ...

  10. php实现远程网络文件下载到服务器指定目录(方法一)

    PHP实现远程网络文件下载到服务器指定目录(方法一) <?php function getFile($url, $save_dir = '', $filename = '', $type = 0 ...