R语言 | 带P值的相关性热图绘制教程

原文链接:带P值的相关性热图绘制教程

本期教程

往期教程部分内容














**注意:若是在MarkDown格式中无法运行成功,请新建有一个R script文件 **

一、加载R包

R 复制代码
if (!require(corrplot)) install.packages("corrplot")
if (!require(Hmisc)) install.packages("ggplot2")

library(ggplot2)
library(corrplot)

二、加载示例数据

{R} 复制代码
# 示例数据
data <- mtcars

三、计算相关性

1. 计算代码

R 复制代码
cor_matrix <- cor(data, use= 'pairwise.complete.obs',method='spearman')
  1. 参数的选择
  • use参数来处理包含缺失值的数据
    "everything", "all.obs", "complete.obs", "na.or.complete", or "pairwise.complete.obs"

  • everything:默认选项,不处理缺失值。如果数据中有缺失值,将返回 NA。
  • all.obs:只有当所有观察值都存在时才会计算相关性。如果数据中有缺失值,将返回错误。
  • complete.obs:只使用完整的观测对来计算相关性。如果有缺失值,将忽略包含缺失值的观测对。
  • na.or.complete:在有缺失值的情况下会先使用完整的观测对,如果全部是缺失值,则返回 NA。
  • pairwise.complete.obs:每对变量单独处理缺失值,计算每一对变量的相关性时,只使用这两个变量都有数据的观测值。

  • method参数:计算相关性的方法。
    pearson(default),kendall,spearman
R 复制代码
cor_matrix
R 复制代码
  mpg        cyl       disp         hp        drat         wt        qsec         vs
mpg   1.0000000 -0.9108013 -0.9088824 -0.8946646  0.65145546 -0.8864220  0.46693575  0.7065968
cyl  -0.9108013  1.0000000  0.9276516  0.9017909 -0.67888119  0.8577282 -0.57235095 -0.8137890
disp -0.9088824  0.9276516  1.0000000  0.8510426 -0.68359210  0.8977064 -0.45978176 -0.7236643
hp   -0.8946646  0.9017909  0.8510426  1.0000000 -0.52012499  0.7746767 -0.66660602 -0.7515934
drat  0.6514555 -0.6788812 -0.6835921 -0.5201250  1.00000000 -0.7503904  0.09186863  0.4474575
wt   -0.8864220  0.8577282  0.8977064  0.7746767 -0.75039041  1.0000000 -0.22540120 -0.5870162
qsec  0.4669358 -0.5723509 -0.4597818 -0.6666060  0.09186863 -0.2254012  1.00000000  0.7915715
vs    0.7065968 -0.8137890 -0.7236643 -0.7515934  0.44745745 -0.5870162  0.79157148  1.0000000
am    0.5620057 -0.5220712 -0.6240677 -0.3623276  0.68657079 -0.7377126 -0.20333211  0.1683451
gear  0.5427816 -0.5643105 -0.5944703 -0.3314016  0.74481617 -0.6761284 -0.14819967  0.2826617
carb -0.6574976  0.5800680  0.5397781  0.7333794 -0.12522294  0.4998120 -0.65871814 -0.6336948
              am       gear        carb
mpg   0.56200569  0.5427816 -0.65749764
cyl  -0.52207118 -0.5643105  0.58006798
disp -0.62406767 -0.5944703  0.53977806
hp   -0.36232756 -0.3314016  0.73337937
drat  0.68657079  0.7448162 -0.12522294
wt   -0.73771259 -0.6761284  0.49981205
qsec -0.20333211 -0.1481997 -0.65871814
vs    0.16834512  0.2826617 -0.63369482
am    1.00000000  0.8076880 -0.06436525
gear  0.80768800  1.0000000  0.11488698
carb -0.06436525  0.1148870  1.00000000

2. 计算P值

使用cor.mtest()函数计算

R 复制代码
# 计算P值矩阵
p_values <- cor.ptest(data, conf.level = 0.95, method = "spearman")
#
p_values
R 复制代码
mpg          cyl         disp           hp         drat           wt         qsec
mpg  0.000000e+00 4.690287e-13 6.370336e-13 5.085969e-12 5.381347e-05 1.487595e-11 7.055765e-03
cyl  4.690287e-13 0.000000e+00 2.275443e-14 1.867686e-12 1.943342e-05 3.574157e-10 6.195832e-04
disp 6.370336e-13 2.275443e-14 0.000000e+00 6.791338e-10 1.613884e-05 3.346362e-12 8.108019e-03
hp   5.085969e-12 1.867686e-12 6.791338e-10 0.000000e+00 2.277988e-03 1.953795e-07 3.105344e-05
drat 5.381347e-05 1.943342e-05 1.613884e-05 2.277988e-03 0.000000e+00 7.593194e-07 6.170251e-01
wt   1.487595e-11 3.574157e-10 3.346362e-12 1.953795e-07 7.593194e-07 0.000000e+00 2.148388e-01
qsec 7.055765e-03 6.195832e-04 8.108019e-03 3.105344e-05 6.170251e-01 2.148388e-01 0.000000e+00
vs   6.191450e-06 1.484058e-08 2.863870e-06 7.125286e-07 1.023343e-02 4.129434e-04 6.860828e-08
am   8.156989e-04 2.178046e-03 1.352011e-04 4.155768e-02 1.432515e-05 1.453656e-06 2.643506e-01
gear 1.328681e-03 7.678209e-04 3.334775e-04 6.390322e-02 1.014930e-06 2.162837e-05 4.182425e-01
carb 4.337570e-05 5.016643e-04 1.430209e-03 1.799847e-06 4.946824e-01 3.583063e-03 4.150300e-05
               vs           am         gear         carb
mpg  6.191450e-06 8.156989e-04 1.328681e-03 4.337570e-05
cyl  1.484058e-08 2.178046e-03 7.678209e-04 5.016643e-04
disp 2.863870e-06 1.352011e-04 3.334775e-04 1.430209e-03
hp   7.125286e-07 4.155768e-02 6.390322e-02 1.799847e-06
drat 1.023343e-02 1.432515e-05 1.014930e-06 4.946824e-01
wt   4.129434e-04 1.453656e-06 2.162837e-05 3.583063e-03
qsec 6.860828e-08 2.643506e-01 4.182425e-01 4.150300e-05
vs   0.000000e+00 3.570439e-01 1.169934e-01 9.878823e-05
am   3.570439e-01 0.000000e+00 2.304063e-08 7.263524e-01
gear 1.169934e-01 2.304063e-08 0.000000e+00 5.312358e-01
carb 9.878823e-05 7.263524e-01 5.312358e-01 0.000000e+00

绘制相关性热图

原文链接:带P值的相关性热图绘制教程

若我们的教程对你有所帮助,请点赞+收藏+转发,这是对我们最大的支持。

往期部分文章

1. 最全WGCNA教程(替换数据即可出全部结果与图形)


2. 精美图形绘制教程

3. 转录组分析教程

4. 转录组下游分析

小杜的生信筆記 ,主要发表或收录生物信息学教程,以及基于R分析和可视化(包括数据分析,图形绘制等);分享感兴趣的文献和学习资料!!

相关推荐
lisw051 天前
R语言的专业网站top5推荐
开发语言·r语言
清同趣科研1 天前
扩增子分析|R分析之微生物生态网络稳定性评估之节点和连接的恒常性、节点持久性以及组成稳定性指数计算
开发语言·r语言
zm-v-159304339863 天前
解锁生命周期评价密码:OpenLCA、GREET 与 R 语言的融合应用
r语言·生命周期
生信大杂烩3 天前
R语言绘图 | 渐变火山图
数据分析·r语言
KY_chenzhao5 天前
用R语言+随机森林玩转遥感空间预测-基于R语言机器学习遥感数据处理与模型空间预测技术及实际项目案例分析
随机森林·机器学习·r语言·生态·遥感·空间预测
没有梦想的咸鱼185-1037-16635 天前
【生命周期分析(Life Cycle Assessment: LCA)】基于OpenLCA、GREET、R语言的生命周期评价方法、模型构建及典型案例应用
数据分析·r语言
没有梦想的咸鱼185-1037-16636 天前
全球森林数据如何分析?基于R语言森林生态系统结构、功能与稳定性分析与可视化
开发语言·随机森林·数据分析·r语言
Tiger Z6 天前
R 语言科研绘图 --- 桑基图-汇总
开发语言·r语言·贴图
Expecto08 天前
因子分析——数学原理及R语言代码
算法·r语言·统计学·多元统计分析
人类群星闪耀时8 天前
R语言数据挖掘:从“挖井”到“淘金”
开发语言·数据挖掘·r语言