R语言之相关性分析

两个变量或两组变量之间的联系,对于连续变量称为相关性,对于分类变量称为关联性。

一、连续变量间的相关性
常用命令及选项如下

使用方法如下:
1.计算相关系数及相关系数矩阵

> cor(count,speed)
[1] 0.7237206

> cor(count,speed,method = "spearman")
[1] 0.5269556

> cor(mf)
           Length       Speed      Algae         NO3        BOD
Length  1.0000000 -0.34322968  0.7650757  0.45476093 -0.8055507
Speed  -0.3432297  1.00000000 -0.1134416  0.02257931  0.1983412
Algae   0.7650757 -0.11344163  1.0000000  0.37706463 -0.8365705
NO3     0.4547609  0.02257931  0.3770646  1.00000000 -0.3751308
BOD    -0.8055507  0.19834122 -0.8365705 -0.37513077  1.0000000

> cor(mf$Length,mf)可以通过$指定显示某个变量的相关系数
     Length      Speed     Algae       NO3        BOD
[1,]      1 -0.3432297 0.7650757 0.4547609 -0.8055507

2.计算方差及协方差矩阵

> cov(count,speed)
[1] 123

> var(count,speed)
[1] 123

> cov(mf)
             Length        Speed       Algae         NO3        BOD
Length    9.4900000  -4.95000000   45.858333  0.70683333 -111.55667
Speed    -4.9500000  21.91666667  -10.333333  0.05333333   41.74167
Algae    45.8583333 -10.33333333  378.583333  3.70166667 -731.73333
NO3       0.7068333   0.05333333    3.701667  0.25456667   -8.50850
BOD    -111.5566667  41.74166667 -731.733333 -8.50850000 2020.87333

> cov2cor(cov(mf))
           Length       Speed      Algae         NO3        BOD
Length  1.0000000 -0.34322968  0.7650757  0.45476093 -0.8055507
Speed  -0.3432297  1.00000000 -0.1134416  0.02257931  0.1983412
Algae   0.7650757 -0.11344163  1.0000000  0.37706463 -0.8365705
NO3     0.4547609  0.02257931  0.3770646  1.00000000 -0.3751308
BOD    -0.8055507  0.19834122 -0.8365705 -0.37513077  1.0000000

3.相关系数的显著性检验

> cor.test(count,speed)

Pearson‘s product-moment correlation

data:  count and speed
t = 2.5689, df = 6, p-value = 0.0424
alternative hypothesis: true correlation is not equal to 0
95 percent confidence interval:
 0.03887166 0.94596455
sample estimates:
      cor
0.7237206

4.使用公式语法
> cor.test(~count+speed,data=fw3,subset = cover%in%c("open","closed"))

计算fw3数据框中cover分类变量的open和closed两个类别的相关系数检验。

============================================================

二、分类变量的关联性

分类变量间的关联性分析基本使用卡方检验,数据都为频数,卡方检验的命令及选项如下

分类变量根据类别的多少,会分为几种情况:

1.两变量均为多分类
此时就是通常说的分析变量间的关联性,此时数据一般为数据框或矩阵结构的频数表,可直接使用chisq.test()命令进行处理,如:

> chisq.test(bird.df)
如果频数表中有频数为0,则会输出一个错误信息:Chi-squared approximation may be incorrect

2.两变量均为二分类

此时数据为2*2列联表,chisq.test()会默认使用耶茨连续性校正,可通过corrct=TRUE进行关闭,实际上,chisq.test()只会对2*2列联表使用耶茨校正。如果设定了使用蒙特卡洛方法,则不会再使用耶茨校正。

3.一个变量为二分类一个变量为多分类

这种情况下为卡方拟合优度检验,为保险起见,基本上都要设定rescale.p=TRUE,如果不指定P,则认为期望概率全部相等的情况。

> chisq.test(survey$new,p=survey$old,rescale.p = TRUE)

时间: 2024-12-20 13:45:00

R语言之相关性分析的相关文章

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

1.R语言重要数据集分析研究需要整理分析阐明理念? 上一节讲了R语言作图,本节来讲讲当你拿到一个数据集的时候如何下手分析,数据分析的第一步,探索性数据分析. 统计量,即统计学里面关注的数据集的几个指标,常用的如下:最小值,最大值,四分位数,均值,中位数,众数,方差,标准差,极差,偏度,峰度 先来解释一下各个量得含义,浅显就不说了,这里主要说一下不常见的 众数:出现次数最多的 方差:每个样本值与均值的差得平方和的平均数 标准差:又称均方差,是方差的二次方根,用来衡量一个数据集的集中性 极差:最大值

R语言学习-词频分析

概念 1.语料库-Corpus 语料库是我们要分析的所有文档的集合,就是需要为哪些文档来做词频 2.中文分词-Chinese Word Segmentation 指的是将一个汉字序列切分成一个一个单独的词语. 3.停用词-Stop Words 数据处理的时候,自动过滤掉某些字或词,包括泛滥的词如Web.网站等,又如语气助词如的.地.得等. 需要加载的包 1.tm包 安装方式:install.packages("tm") 语料库: Corpus(x,readerControl) x-语料

基于R语言的用户分析

1. 基本分析理论 C5.0是决策树模型中的算法,79年由J R Quinlan发展,并提出了ID3算法,主要针对离散型属性数据,其后又不断的改进,形成C4.5,它在ID3基础上增加了队连续属性的离散化.C5.0是C4.5应用于大数据集上的分类算法,主要在执行效率和内存使用方面进行了改进.C4.5算法是ID3算法的修订版,采用GainRatio来加以改进方法,选取有最大GainRatio的分割变量作为准则,避免ID3算法过度配适的问题.C5.0算法则是C4.5算法的修订版,适用于处理大数据集,采

R语言重要数据集分析研究——  数据集本身的分析技巧

数据集本身的分析技巧           作者:王立敏           文章来源:网络 1.数据集 数据集,又称为资料集.数据集合或资料集合,是一种由数据所组成的集合. Data set(或dataset)是一个数据的集合,通常以表格形式出现.每一列代表一个特定变量.每一行都对应于某一成员的数据集的问题.它列出的价值观为每一个变量,如身高和体重的一个物体或价值的随机数.每个数值被称为数据资料.对应于行数,该数据集的数据可能包括一个或多个成员. 2.数据分析 数据结构 创建向量和矩阵 函数c(

R语言重要数据集分析研究——搞清数据的由来

搞清数据的由来 作者:李雪丽 资料来源:百度百科

R语言实战-如何分析QQ群记录2-每日信息数量图

构思步骤: 1.从data中取出时间数据. 2.从时间数据中提取日期数据. 3.根据日期数据进行汇总每日的消息数量. 4.利用ggplot2进行绘图. #从data中获取时间信息 time<-data$dateTime #把时间中的日期属性提取出来 p<-paste(year(time),month(time),day(time),sep="-") #把p转换为数据框 Timed<-data.frame(p) #通过P分组,p段名称变成days,增加数量列Freq,根

R语言:社会网络关系分析-进阶

本文内容参考李明<R语言与网站分析>一书 下面使用R语言实现社会网络分析的各个基础概念 # (1) 点集合(Vertexs)和点的属性数据 # 使用V(g)可返回关系网络g中所有点的集合V,并通过length函数直接返回点数目n.代码如下: V(g.undir) ## Vertex sequence: ## [1] 1 2 3 4 5 6 7 length(V(g.undir)) ## [1] 7 # 在g.undir中记录了点名称属性数据V(g.undir)$label,这里也可以直接展示.

用R语言分析我的fitbit计步数据

目标:把fitbit的每日运动记录导入到R语言中进行分析,画出统计图表来 已有原始数据:fitbit2014年每日的记录电子表格文件,示例如下: 日期 消耗卡路里数 步 距离 攀爬楼层数 久坐不动的分钟数 不太活跃分钟数 中度活跃分钟数 非常活跃分钟数 2014年4月27日 2736 16581 11.84 7 1111 131 117 81 2014年4月28日 2514 12622 9.01 6 910 136 59 76 2014年4月29日 2231 8357 5.97 9 1208 1

大数据时代的精准数据挖掘——使用R语言

老师简介: Gino老师,即将步入不惑之年,早年获得名校数学与应用数学专业学士和统计学专业硕士,有海外学习和工作的经历,近二十年来一直进行着数据分析的理论和实践,数学.统计和计算机功底强悍. 曾在某一世界500强公司核心部门担任高级主管负责数据建模和分析工作,在实践中攻克统计建模和数据分析难题无数,数据处理与分析科学精准,在实际应用中取得良好的效果. Gino老师担任数据分析培训师多年,探索出一套以实例讲解带动统计原理理解和软件操作熟悉的方法,授课的学生能迅速理解统计原理并使用统计软件独立开展数