精华内容
下载资源
问答
  • R语言相关性

    2021-01-07 06:59:31
    R语言相关性 相关系数可以用来描述定量变量之间的关系。相关系数的符号(±)表明关系的方向(正相 关或负相关),其值的大小表示关系的强弱程度(完全不相关时为0,完全相关时为1)。 1、相关的类型 1、Pearson、...
  • R语言相关性分析

    千次阅读 热门讨论 2021-09-02 14:00:21
    今天教大家怎么批量求相关性分析。教程的背景问题是某一个理化性质和光谱的每一个波长做相关性分析,思路是先求一个波长的相关性,循环对每一个波长都求一遍,最后得到一个矩阵。


    今天根据自己最近的一个小任务,做光谱与理化性质的相关性分析,总结其中比较重要的两个点写成博文,供大家参考:
    1.选择什么类型的相关性检验,求相关系数的数据如何构造
    2.怎么批量求相关系数

    教程的背景问题是做某一个理化性质属性和光谱的每一个波长做相关性分析,思路是先求一个波长的相关性,循环对每一个波长都求一遍,最后得到一条在整个波段范围上的相关系数变化曲线。

    1.相关性检验类型选择

    查阅资料,具体参见如何选择相关系数
    相关性检验总共有三种类型:Pearson、Spearman、Kendall,三者区别简而言之是:
    Pearson检验:定量数据符合正态分布。
    Spearman检验:定量数据不符合正态分布。
    Kendall检验:定量数据,检查一致性,类似于多个评委打分,分数之间是否相关。

    所以大家根据自己的数据情况,提前做好正态检验,再选择相应的检验类型。这里,我的数据不服从正态分布,所以下面以Spearman检验方法为例。

    另外,在分析结果时,需要考虑p值,可参考相关性系数和显著性水平.

    2.导入数据

    小技巧:大家可以在excel选项设置中,调一下引用格式,方便后面引用列数,不用再数了。
    调整excel表格引用格式
    我的数据集构造如下:
    表中8-12列是不同的理化性质,我要分别对每一个理化性质求后面13~最后一列的光谱相关系数。我期望得到的结果数据为行数是所有波长的个数,列是不同的理化性质。
    在这里插入图片描述
    这里使用readxl包读取excel数据,针对这个问题,readxl包比xlsx包好用一些。

    library(readxl)#用这个包比xlsx包好用一些
    

    导入后,有一点需要注意,导入后的格式为tbl_df,不能用于接下来的相关性分析函数调用,所以转为数据框格式。

    an_dan<-as.data.frame(read_excel("data.xlsx",sheet=2))#这里第几个sheet就是第几个
    

    3.相关性分析主体代码

    3.1首先创建一个空白矩阵,后面循环后的计算结果分别填入

    要分别得到相关系数和检验的p值,所以创建两个矩阵。

    #先创建空白矩阵
    cor_an<-matrix(NA,nrow = 2001,ncol = 5)#矩阵内容为NA空
    colnames(cor_an)<-c("干态明度","润态明度","干态彩度","润态彩度","OM")
    
    p_an<-matrix(NA,nrow = 2001,ncol = 5)
    colnames(p_an)<-c("干态明度","润态明度","干态彩度","润态彩度","OM")
    

    3.2批量求解

    中心思想:先对一个理化求每一个波段的结果,最后遍历所有理化。
    引入k,k代表第几个理化,如果你需要对多个属性求相关性时需要考虑这个。
    外层for是对不同的属性循环,8:12是不同的理化性质。
    内层for里循环每一个波段。

    cor.test函数里,分别放入两个要检测相关性的列数据x,y,位置顺序没有关系,我测试了结果是一样的(统计没学好hhh)。在method里可以换不同的检测方法。结果中可以调用estimate就是相关系数,p.value就是p值,我们需要把他们都分别保存下来。
    求解完第一个理化性质t与第一个波长j后,放入事先创建好的空白矩阵结果中,k在这里掌管列数,放入第几列就是第几个理化性质的计算结果。
    最后对波长j递增,结果表中的行号i递增。

    在第二个循环外,对t+1,计算下一个理化性质,对k+1,准备放入结果的下一列。

    最后把结果以csv格式输出。

    k<-1#第几个理化
    for (t in 8:12) {
      i<-1#行号,放到这里是为了每次初始化为1,从第一行开始录入结果
      for (j in 13:2013) {#循环每一个波段
        cor_an1<-cor.test(an_dan[,t],an_dan[,j],alternative = "two.sided",method = "spearman",conf.level = 0.95)
        cor_an[i,k]<-cor_an1$estimate#相关系数
        p_an[i,k]<-cor_an1$p.value#p值
        
        j<-j+1
        i<-i+1
      }
      t<-t+1
      k<-k+1
    }
    
    write.csv(cor_an,"cor_an.csv")
    write.csv(p_an,"p_an.csv")
    

    这就是最终的相关系数计算结果,p值表构造相同。行为每一个波长的计算结果。
    在这里插入图片描述
    以上就是R语言循环求多个相关系数的过程,循环得到的结果怎么输入矩阵是一个重要的技巧,无论在别的数据整理、结果整理中都可以借鉴这样的录入思路。

    如果觉得有用的话,请大家多多点赞收藏~

    展开全文
  • R语言相关性矩阵绘图

    千次阅读 2021-04-21 16:03:10
    corrgram(Data[,3:9], lower.panel=panel.shade, upper.panel=panel.pie, text.panel=panel.txt, main="相关系数图") 下面板通过阴影颜色的深浅表示相关性的强弱,阴影中的斜线若呈左下至右上则表示正相关,若呈...
    1. 利用PerformanceAnalytics包
    2. 矩阵散点图很常规
    3. 利用corrplot包
    4. 利用corrgram包

    不废话,直接放图和代码啦!

    1. 一个图能展示分布、散点、相关系数三个信息,很好用啦!
      在这里插入图片描述
    install.packages('PerformanceAnalytics')
    chart.Correlation(X, histogram=TRUE, pch=19)
    
    1. 比较基础的矩阵散点图
      在这里插入图片描述
    cor(Data[,2:9])       
    plot(Data[,2:9])
    
    
    1. 用corrplot包绘制的一些图,一些参数说明如下:
    corrplot(tcor,method="shade",
             type = "lower", #选择画上三角或下三角【lower/upper】,若没这个指标则包含上下三角
             shade.col=NA,
             tl.col = "black",#文本标签颜色
             tl.srt = 45,#文本标签倾斜角度
             addCoef.col = "white", #相关系数的颜色
             cl.pos = "n", 
             order="AOE")#有三种排序方式,矩阵重排序,使用特征值角排序、第一主成分或层次聚类"AOE"|"FPC"|"hclust"
    

    在这里插入图片描述
    来看一下不同类型的一些图

    corrplot(tcor,method="shade")
    corrplot(tcor,method="color")
    corrplot(tcor,method="ellipse")
    corrplot(tcor,method="pie")
    

    在这里插入图片描述
    在这里插入图片描述

    在这里插入图片描述
    在这里插入图片描述
    还可以将一些图形进行组合搭配

    4.可以用corrgram包进行一些组合搭配

    library("fpc")
    library("corrgram")
    
    #可以把多种类型的图结合在一起。
    corrgram(Data[,3:9],
             lower.panel=panel.shade,
             upper.panel=panel.pie,
             text.panel=panel.txt,
             main="相关系数图")
    

    下面板通过阴影颜色的深浅表示相关性的强弱,阴影中的斜线若呈左下至右上则表示正相关,若呈左上至右下则表示负相关上面板以饼图的填充比例展示相关系数的大小
    在这里插入图片描述

    corrgram(Data[,3:9],
             lower.panel=panel.ellipse,
             upper.panel=panel.pts,
             diag.panel=panel.minmax,
             main="相关系数图")
    

    下面板通过椭圆大致描绘散点图的外围轮廓,中间的红色曲线是采用局部加权散点平滑拟合的回归线,上面板是散点图,对角面板不仅显示变量名,同时显示变量取值的最小值和最大值。
    在这里插入图片描述

    展开全文
  • R语言相关性分析及步骤

    千次阅读 2021-03-17 15:56:35
    记录一下R语言学习过程,对于R的基础就是基本数据类型(向量,矩阵,数据框,字符串等等),库的调用以及函数自定义,还需要多加学习! 进入主题,今天主题是相关性分析: 以下为代码: y<-c(170,175,180) //定义...

    记录一下R语言学习过程,对于R的基础就是基本数据类型(向量,矩阵,数据框,字符串等等),库的调用以及函数自定义,还需要多加学习!
    进入主题,今天主题是相关性分析:
    以下为代码:

    y<-c(170,175,180) //定义向量
    y1<-c(20,25,30)
    
    y<-cor.test(y,y1,method="spearman") //调用库计算2个向量之间的spearman系数
    y
    
    x<-cor.test(y,y1)
    x
    
    A <- matrix(11:16, nrow=3, ncol=2) //定义矩阵
    A
    
    x<-cor.test(A, adjust = "none", use = "complete") //调用库计算相关性系数
    x
    
    
    csvpath<-file.choose()//调用文件选择对话框
    csvpath
    df<-read.csv(csvpath,header=T,row.names = 1) //读取CSV文件成数据框,df是data.frame的缩写
    df
    
    Y<- cor(df) //调用库计算相关性系数
    Y
    
    wmj<-cor(df,method = 'spearman') //调用库计算spearman系数
    wmj
    
    install.packages("Hmisc")//安装HMISC包,用来将数据框转换成矩阵
    
    res2<-rcorr(as.matrix(df))//转换成矩阵
    res2
    
    WMJ_R<-res2$r  //获取R值
    WMJ_R
    
    WMJ_N<-res2$n  //获取样本个数
    WMJ_N
    
    WMJ_P<-res2$P  //获取P值
    WMJ_P
    
    
    //定义函数将矩阵转成数据框
    flattenCorrMatrix <- function(cormat, pmat) {
      ut <- upper.tri(cormat)
      data.frame(
        row = rownames(cormat)[row(cormat)[ut]],
        column = rownames(cormat)[col(cormat)[ut]],
        cor  =(cormat)[ut],
        p = pmat[ut]
      )
    }
    
    WMJ_Y<-flattenCorrMatrix(res2$r,res2$P)
    WMJ_Y
    
    df1<-flattenCorrMatrix(res2$r,res2$P)
    abs(df1$cor)>0.25
    
    y_wmj<-df1[abs(df1$cor)>0.25,]
    y_wmj
    
    install.packages("corrplot") //安装图形打印包
    library("corrplot")  //加载图像打印包
    corrplot(res2$r,type="upper",tl.col ="black",tl.srt = 45)  //打印图形
    
    install.packages("PerformanceAnalytics")
    library("PerformanceAnalytics")
    chart.Correlation(df,histogram = T,pch=19)       //打印相关性图形
    

    代码关键部分添加了注释方便阅读与理解,以上就是相关性分析学习记录

    展开全文
  • R语言相关性绘图

    2020-12-07 13:26:30
    library('corrplot') fivecol colnames(fivecol) <- c( 'D0','D1','D2','D3','D4','D5','D6','D7','D8','D9') matrix <- cor (fivecol) #直接画图,不设置其它参数 corrplot(corr=matrix) ...
    library('corrplot')
    fivecol
    
    colnames(fivecol) <- c( 'D0','D1','D2','D3','D4','D5','D6','D7','D8','D9') 
    
    matrix <- cor (fivecol)
    
    #直接画图,不设置其它参数
    corrplot(corr=matrix)
    
    
    corrplot(matrix, p.mat = res1$p, tl.pos = "d",type ="lower",insig = "label_sig",
             sig.level = c(.005, .01, .05), pch.cex = .9,
             pch.col = "black", order = "AOE")
    
    corrplot(matrix, add = TRUE, type = "upper", method = "circle", diag = FALSE, tl.pos = "n", cl.pos = "n")
    

    order = "AOE"删除
    res1 <- cor.mtest(matrix)

    `sim` <- read.csv("E:/Githubresponsity/YEDDA/LDA/10X10sim.csv", header=TRUE)
    
    matrix
    
    simdata=as.matrix(sim)
    
    corrplot(simdata, add = TRUE, type = "upper", method = "number"
             , diag = FALSE
             , tl.pos = "n", cl.pos = "n")
    

     

    展开全文
  • 在计算好相关系数以后,如何对它们进行统计显著性检验呢...其中的x和y为要检验相关性的变量,alternative则用来指定进行双侧检验或单侧检验(取值 为"two.side"、“less"或"greater”),而method用以指定要计算的相关
  • R语言相关性计算及使用ggcorrplot包相关性分析热力图可视化分析实战 目录 R语言相关性计算及使用ggcorrplot包相关性分析热力图可视化分析实战 #安装ggcorrplot包 #导入数据并计算相关性系数 # 计算相关性的P...
  • R语言相关性分析

    千次阅读 2020-12-23 17:24:36
    衡量随机变量相关性的方法主要有三种:pearson相关系数,spearman相关系数,kendall相关系数:1.pearson相关系数,亦即皮尔逊相关系数pearson相关系数用来衡量两个随机变量之间的相关性R语言中求两个随机变量pearson...
  • 相关性分析 相关性分析是指对两个或多个具备相关性的变量元素进行分析,从而衡量两个变量因素的相关密切程度 相关性的元素之间需要存在一定的联系或者概率才可以进行相关性分析,即两个变量之间是否有联系 相关性...
  • 0.7909486 看一下所有变量的相关性,还有用corrplot函数画出相关性的表 corr(mtcars)#求所有变量的相关性 library(corrplot)#加载所需要的包 corrplot(corr) corrplot函数可以画出其他好看的相关关系图 corrplot...
  • R语言corrplot包相关性绘图代码......

    千次阅读 2020-12-23 17:24:36
    我们都知道是用来观察变量之间相关性的一种分析方法,而得出的结果很难用表格形象展示,这个时候我们的相关性图形就派上了用场,那么接下来为大家介绍R语言情景下用mtcars数据集和corrplot包绘制相关性图形的方法...
  • R语言corrplot相关性热图制作

    千次阅读 2021-03-16 19:43:03
    R语言corrplot相关性热图制作 使用R语言制作相关性热图,使用corrplot这个包,本文进行简略的介绍,函数的具体内容见文档: https://cran.r-project.org/web/packages/corrplot/vignettes/corrplot-intro.html 在...
  • 本次,介绍一下相关性分析以及...1.1 R语言默认函数cor cor(dd) 这里,原始数据中有缺失值,所以有NA,所以我们需要考虑缺失值,修改的代码如下: cor(dd,use = "complete.obs") 相关性结果: 上面还有一个缺陷
  • R语言相关性分析(示例代码)

    千次阅读 2021-05-26 04:18:34
    两个变量或两组变量之间的联系,对于连续变量称为相关性,对于分类变量称为关联性。一、连续变量间的相关性常用命令及选项如下使用方法如下:1.计算相关系数及相关系数矩阵> cor(count,speed)[1] 0.7237206> ...
  • rm(list=ls())#先把我们的R清空一下dataread.table(file="C:\\Users\\gaom\\Desktop\\R语言绘图\\相关性分析\\test_data.txt",header=T,row.names=1,sep="\t")#读取数据cor(data,method="pearson")#方法可选pearson...
  • R语言基础--简单相关性分析(1)

    千次阅读 2020-12-23 17:24:21
    简单相关性分析(1)简介1. 协方差和相关系数1.1 协方差1.2 相关系数2. 相关性分析参考简介初次接触相关性分析,在摸索中前进,也顺便将笔记记录下来,未雨绸缪嘛!简单来说,相关性分析就是衡量两个变量之间的依赖性...
  • R语言数据相关性分析(相关系数和p值)及可视化

    万次阅读 多人点赞 2021-03-07 21:25:15
    此篇为转载R语言学习笔记之相关性矩阵分析及其可视化 数据相关性分析及可视化1. 新建数据集2. Hmisc3. 可视化相关系数矩阵4. chart.Correlation()来自于包PerformanceAnalytics5. 此篇为笔记转载如有侵权联系删除 1....
  • 一. 读取数据因为我们一般自己录的数据都是excel...按照读取csv文件方法读取dat 此名为excel1文件被R语言读取二. 利用ggplot2画图1.加载ggplot2包library(ggplot2)#加载ggplot2包注意此处初学者容易出现一个错误,g...
  • rm(list=ls())#先把我们的R清空一下datafile="C:\\Users\\gaom\\Desktop\\R语言绘图\\相关性分析\\",header=T,=1,sep="\t")#读取数据cor(data,method="pearson")#方法可选pearson、kendall、spearman。##T01T02T03.....
  • 用于序列间的相关性矩阵计算,其中用到的其他语言包需自行下载,主题可自行调整
  • R语言特征值相关性分析

    万次阅读 多人点赞 2018-02-11 22:59:44
    大到几个转录组样本的整体相关性分析,小到挑选了一些候选基因看它们在不同样本中的表达模式相关性。当我们做完了相关性分析的时候,常常会用下面这种图形来展示:那么问题来了,有没有别的方法,可以让我的相关性...
  • 原标题:R语言相关性分析(下)7月8日的微信推文中,给大家介绍了相关性分析(戳这里)。本文是这篇文章的下篇,给大家讲讲如何利用R语言做相关性分析。相关性分析cor函数的完整语法如下:cor(x,y = NULL,use=...
  • R语言-相关性和回归

    2021-07-14 09:42:53
    文章目录一、常规函数1.1 中位数 median( )1.2 平均值 mean( )1.3 最小值 min( )1.4 最大值 max( )1.5 方差1.6 标准差1.7 四分位距1.8 数据范围1.9 数据统计二、复杂函数2.1 相关性检验 cor.test( )2.2 协方差系数 ...
  • R 语言相关性的度量

    2021-12-18 10:33:02
    以拒绝原假设,那么你的兴趣就会自然而然地转向用以衡量相关性强弱的相关性度量。vcd包中 的assocstats()函数可以用来计算二维列联表的phi系数、列联系数和Cramer’s V系数 > library(vcd) > mytable <- ...
  • R语言:多个基因的相关性分析与展示。关于批量相关性分析,我们发过两个帖子。单基因批量相关性分析的妙用,又是神器!基于单基因批量相关性分析的GSEA。两两分析的肯定也是没有问题:现在的问题是,如果是多个基因分...
  • R语言相关性矩阵,带P值和*号

    千次阅读 2020-08-31 11:22:48
    这阵子老师让我做数据分析,在做线性回归之前,要做所有变量的相关性,我看了网上的一些教程之后感觉不太满意,于是自己手动琢磨了一下,琢磨到一半心态爆炸,就去问老师。老师给了我代码,在一来一去若干次沟通之后...
  • title: R语言计算相关性和p-values date: 2021-08-21 23:45:52 tags: #R语言计算相关性和p-values setwd('C:/Users/LHW/Desktop/南极企鹅与遥相关/企鹅数据/ARCGIS可视化/和各指数的相关性分析/去趋势后的相关性...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 19,851
精华内容 7,940
关键字:

r语言相关性