本次,介绍一下相关性分析以及相关性分析可视化常用方法。

0. 相关数据

library(learnasreml)
library(tidyverse)
data(fm)
str(fm)dd = fm %>% select(-c(1:5))
head(dd)

1. 相关性分析

1.1 R语言默认函数cor

cor(dd)


这里,原始数据中有缺失值,所以有NA,所以我们需要考虑缺失值,修改的代码如下:

cor(dd,use = "complete.obs")

相关性结果:

上面还有一个缺陷,没有给出显著性检验,默认的cor.test只能对两个变量进行显著性检验,比如:

cor.test(dd[,1],dd[,2])

1.2 使用Hmisc包中的rcorr函数

Hmisc包中的rcorr函数可以对多个变量进行相关性计算,并且计算显著性。

注意,需要将变量转化为矩阵,才可以进行分析。

library(Hmisc)
dd = as.matrix(dd)
rcorr(dd)

结果如下:

> rcorr(dd)dj    dm   wd    h1   h2    h3   h4   h5
dj  1.00  0.38 0.86  0.04 0.04 -0.02 0.07 0.03
dm  0.38  1.00 0.57 -0.03 0.03 -0.05 0.05 0.04
wd  0.86  0.57 1.00  0.11 0.14  0.07 0.18 0.15
h1  0.04 -0.03 0.11  1.00 0.58  0.47 0.47 0.44
h2  0.04  0.03 0.14  0.58 1.00  0.83 0.79 0.73
h3 -0.02 -0.05 0.07  0.47 0.83  1.00 0.82 0.75
h4  0.07  0.05 0.18  0.47 0.79  0.82 1.00 0.91
h5  0.03  0.04 0.15  0.44 0.73  0.75 0.91 1.00ndj  dm  wd  h1  h2  h3  h4  h5
dj 826 824 826 826 826 826 823 823
dm 824 825 825 825 825 825 822 822
wd 826 825 827 827 827 827 824 824
h1 826 825 827 827 827 827 824 824
h2 826 825 827 827 827 827 824 824
h3 826 825 827 827 827 827 824 824
h4 823 822 824 824 824 824 824 824
h5 823 822 824 824 824 824 824 824Pdj     dm     wd     h1     h2     h3     h4     h5
dj        0.0000 0.0000 0.2023 0.2388 0.6239 0.0399 0.3939
dm 0.0000        0.0000 0.4264 0.3668 0.1415 0.1619 0.2514
wd 0.0000 0.0000        0.0013 0.0000 0.0314 0.0000 0.0000
h1 0.2023 0.4264 0.0013        0.0000 0.0000 0.0000 0.0000
h2 0.2388 0.3668 0.0000 0.0000        0.0000 0.0000 0.0000
h3 0.6239 0.1415 0.0314 0.0000 0.0000        0.0000 0.0000
h4 0.0399 0.1619 0.0000 0.0000 0.0000 0.0000        0.0000
h5 0.3939 0.2514 0.0000 0.0000 0.0000 0.0000 0.0000

上面结果中:

  • 第一部分是相关系数
  • 第二部分是有效观测值
  • 第三部分是显著性

所以,我们使用第一部分相关系数,和第三部分显著性结果即可。

2. 相关性系数可视化

R包进行相关系数可视化时,会将相关系数和显著性也输出到图片中,一步到位。

2.1 PerformanceAnalytics包中的chart.Correlation

代码如下:

library(PerformanceAnalytics)
chart.Correlation(dd)

2.2 corrplot包中的corrplot

注意corrplot的对象,需要时相关系数,而不是原始数据。

library(corrplot)
re = cor(dd,use = "complete.obs")
corrplot(re)


没有给出显著性,不太友好。

2.3 GGally包中的chart.ggpairs

注意,ggpairs的对象,需要是数据框,所以要转化为数据框。

library(GGally)
dd = as.data.frame(dd)
ggpairs(dd)

ggpairs的好处是,还可以进行分组。比如这里按照两组进行划分。

fm数据框中,有两个密度,这里,我们按照密度进行分组。

ggpairs(fm, columns = (6:13),ggplot2::aes(color = fm$Spacing))

3. 所有代码汇总

library(learnasreml)
library(tidyverse)
data(fm)
str(fm)dd = fm %>% select(-c(1:5))
head(dd)# 相关系数
cor(dd)
cor(dd,use = "complete.obs")cor.test(dd[,1],dd[,2])library(Hmisc)
dd = as.matrix(dd)
rcorr(dd)# 相关系数可视化
library(PerformanceAnalytics)
chart.Correlation(dd)library(corrplot)
re = cor(dd,use = "complete.obs")
corrplot(re)library(GGally)
dd = as.data.frame(dd)
ggpairs(dd)ggpairs(fm, columns = (6:13),ggplot2::aes(color = fm$Spacing))

R语言相关性分析和相关性分析可视化常用方法汇总相关推荐

  1. R语言描述性统计分析:相关性分析

    R语言描述性统计分析:相关性分析 相关性分析:pearson.spearman.kendall 相关性系数的显著性检验: 偏相关性分析: library(ISwR) attach(thuesen) c ...

  2. R语言的Copula变量相关性分析

    在工程.水文和金融等各学科的研究中,总是会遇到很多变量,研究这些相互纠缠的变量间的相关关系是各学科的研究的重点.虽然皮尔逊相关.秩相关等相关系数提供了变量间相关关系的粗略结果,但这些系数都存在着无法克 ...

  3. R语言使用survminer包生存分析及可视化(ggsurvplot)实战详解:从数据集导入、生存对象生成、ggsurvplot可视化参数配置、设置、可视化对比

    R语言使用survminer包生存分析及可视化(ggsurvplot)实战详解:从数据集导入.生存对象生成.ggsurvplot可视化参数配置.设置.可视化对比 目录 R语言使用survminer包生 ...

  4. R-GIS: 如何用R语言实现GIS地理空间分析及模型预测

    前言:随着地理信息系统(GIS)和大尺度研究的发展,空间数据的管理.统计与制图变得越来越重要.R语言在数据分析.挖掘和可视化中发挥着重要的作用,其中在空间分析方面扮演着重要角色,与空间相关的包的数量也 ...

  5. R语言指数平滑预测法分析南京出租车打车软件空载率时间序列补贴政策可行性...

    报告链接:http://tecdat.cn/?p=32161 本文通过建立空载率的数学模型,帮助客户来分析出租车的空载率,从而对出租车补贴政策能否提高高峰期的实载率,缓解打车难问题进行了说明(点击文末 ...

  6. r语言 bsda包_使用R语言creditmodel包进行Vintage分析或留存率分析

    1 什么是vintage分析? Vintage分析(账龄分析法)被广泛应用于信用卡及信贷行业,这个概念起源于葡萄酒,即不同年份出产的葡萄酒的品质有差异,那么不同时期开户或者放款的资产质量也有差异,其核 ...

  7. 单因素方差分析_基于R语言开展方差分析(一)——单因素方差分析

    基本原理 方差分析(Analysis of variance, ANOVA)是用于两个或两个以上样本均数比较的方法,还可以分析两个或多个研究因素的交互交互作用以及回归方程的线性假设检验等.其基本思想是 ...

  8. R语言分位数回归Quantile Regression分析租房价格

    全文链接:http://tecdat.cn/?p=18422 本文想在R软件中更好地了解分位数回归优化.在查看分位数回归之前,让我们从样本中计算中位数或分位数(点击文末"阅读原文" ...

  9. R语言向量误差修正模型 (VECMs)分析长期利率和通胀率影响关系

    原文链接:http://tecdat.cn/?p=22215 向量自回归模型估计的先决条件之一是被分析的时间序列是平稳的.但是,经济理论认为,经济变量之间在水平上存在着均衡关系,可以使这些变量差分而平 ...

  10. 使用R语言creditmodel包进行Vintage分析或留存率分析

    1 什么是vintage分析? Vintage分析(账龄分析法)被广泛应用于信用卡及信贷行业,这个概念起源于葡萄酒,即不同年份出产的葡萄酒的品质有差异,那么不同时期开户或者放款的资产质量也有差异,其核 ...

最新文章

  1. 1 23 456c语言,2014年计算机二级考试C语言模拟题(1)
  2. 人工智能都沸腾3年了,现在就业情况还乐观吗?
  3. c语言编程获取当前系统时间包含年,月,日,时,分,秒.,C语言获取系统时间的几种方式...
  4. CTFshow php特性 web150
  5. Openssl的证书格式转换
  6. OV7725的帧率和PCLK寄存器设置
  7. 踩坑:VScode 集成 eslint 插件
  8. 爬取网易,搜狐,凤凰和澎湃网站评论数据,正负面情感分析
  9. 图解设计模式(二)适配器模式
  10. H3C OSPF基本配置命令
  11. Cydia 不能联网的终极解决方法
  12. java dtls server_基于tinyDTLS 构建的lwm2m Server
  13. Matlab实现图像高斯滤波(公开代码)
  14. 打开ps显示计算机内存不足怎么办,电脑PS提示内存不足怎么解决
  15. WMB ESQL报文函数截取新的XML方法
  16. SpringSecurity认证基本原理与认证2种方式
  17. 登上大别山主景区天堂寨
  18. ZUCC 正方教务系统 抢课脚本 抢课流程实现
  19. (1986年 - 2022年)沈先生的回忆篇
  20. pushpush(双向队列/列表)

热门文章

  1. Dooc 文档下载器 -- 支持【百度文库】、【豆丁】、【MBALib】直接下载,无需登录积分
  2. 电脑无线服务器被关闭,电脑WiFi无IP分配的几种常见原因及解决方法
  3. xray、SwichyOmega、BurpSuite、ray的相关使用
  4. java实现获取手机设备号_Java 安卓获得获得手机设备信息
  5. [MRCTF2020]千层套路1
  6. 大地坐标与空间直角坐标互相转换
  7. 关于量子技术的一些概念纠正
  8. autocad 2014菜单栏没了 怎么调出来 ?
  9. java 9宫格抽奖_多宫格抽奖
  10. 标准中文电码查询易语言代码