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

R语言 R语言 1194 人阅读 | 0 人回复 | 2024-06-24

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

「一边学习,一边总结,一边分享!」

由于微信改版,一直有同学反映。存在长时间接收不到公众号的推文。那么请跟随以下步骤,将**「小杜的生信筆記」设置为「星标」,不错过每一条推文教程。**

本期教程

往期教程部分内容


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

一、加载R包

if (!require(corrplot)) install.packages("corrplot")
if (!require(Hmisc)) install.packages("ggplot2")

library(ggplot2)
library(corrplot)

二、加载示例数据

# 示例数据
data <- mtcars

三、计算相关性

1. 计算代码

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
cor_matrix
mpg        cyl       disp         hp        drat         wt        qsec         vs
mpg   1.0000000 -0.9108013 -0.9088824 -0.89466460.65145546 -0.88642200.466935750.7065968
cyl  -0.91080131.00000000.92765160.9017909 -0.678881190.8577282 -0.57235095 -0.8137890
disp -0.90888240.92765161.00000000.8510426 -0.683592100.8977064 -0.45978176 -0.7236643
hp   -0.89466460.90179090.85104261.0000000 -0.520124990.7746767 -0.66660602 -0.7515934
drat  0.6514555 -0.6788812 -0.6835921 -0.52012501.00000000 -0.75039040.091868630.4474575
wt   -0.88642200.85772820.89770640.7746767 -0.750390411.0000000 -0.22540120 -0.5870162
qsec  0.4669358 -0.5723509 -0.4597818 -0.66660600.09186863 -0.22540121.000000000.7915715
vs    0.7065968 -0.8137890 -0.7236643 -0.75159340.44745745 -0.58701620.791571481.0000000
am    0.5620057 -0.5220712 -0.6240677 -0.36232760.68657079 -0.7377126 -0.203332110.1683451
gear  0.5427816 -0.5643105 -0.5944703 -0.33140160.74481617 -0.6761284 -0.148199670.2826617
carb -0.65749760.58006800.53977810.7333794 -0.125222940.4998120 -0.65871814 -0.6336948
              am       gear        carb
mpg   0.562005690.5427816 -0.65749764
cyl  -0.52207118 -0.56431050.58006798
disp -0.62406767 -0.59447030.53977806
hp   -0.36232756 -0.33140160.73337937
drat  0.686570790.7448162 -0.12522294
wt   -0.73771259 -0.67612840.49981205
qsec -0.20333211 -0.1481997 -0.65871814
vs    0.168345120.2826617 -0.63369482
am    1.000000000.8076880 -0.06436525
gear  0.807688001.00000000.11488698
carb -0.064365250.11488701.00000000

2. 计算P值

使用cor.mtest()函数计算

# 计算P值矩阵
p_values <- cor.ptest(data, conf.level = 0.95, method = "spearman")
#
p_values
mpg          cyl         disp           hp         drat           wt         qsec
mpg  0.000000e+004.690287e-136.370336e-135.085969e-125.381347e-051.487595e-117.055765e-03
cyl  4.690287e-130.000000e+002.275443e-141.867686e-121.943342e-053.574157e-106.195832e-04
disp 6.370336e-132.275443e-140.000000e+006.791338e-101.613884e-053.346362e-128.108019e-03
hp   5.085969e-121.867686e-126.791338e-100.000000e+002.277988e-031.953795e-073.105344e-05
drat 5.381347e-051.943342e-051.613884e-052.277988e-030.000000e+007.593194e-076.170251e-01
wt   1.487595e-113.574157e-103.346362e-121.953795e-077.593194e-070.000000e+002.148388e-01
qsec 7.055765e-036.195832e-048.108019e-033.105344e-056.170251e-012.148388e-010.000000e+00
vs   6.191450e-061.484058e-082.863870e-067.125286e-071.023343e-024.129434e-046.860828e-08
am   8.156989e-042.178046e-031.352011e-044.155768e-021.432515e-051.453656e-062.643506e-01
gear 1.328681e-037.678209e-043.334775e-046.390322e-021.014930e-062.162837e-054.182425e-01
carb 4.337570e-055.016643e-041.430209e-031.799847e-064.946824e-013.583063e-034.150300e-05
               vs           am         gear         carb
mpg  6.191450e-068.156989e-041.328681e-034.337570e-05
cyl  1.484058e-082.178046e-037.678209e-045.016643e-04
disp 2.863870e-061.352011e-043.334775e-041.430209e-03
hp   7.125286e-074.155768e-026.390322e-021.799847e-06
drat 1.023343e-021.432515e-051.014930e-064.946824e-01
wt   4.129434e-041.453656e-062.162837e-053.583063e-03
qsec 6.860828e-082.643506e-014.182425e-014.150300e-05
vs   0.000000e+003.570439e-011.169934e-019.878823e-05
am   3.570439e-010.000000e+002.304063e-087.263524e-01
gear 1.169934e-012.304063e-080.000000e+005.312358e-01
carb 9.878823e-057.263524e-015.312358e-010.000000e+00

绘制相关性热图

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

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

往期部分文章

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


「2. 精美图形绘制教程」

「3. 转录组分析教程」

「4. 转录组下游分析」

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

微信扫一扫分享文章

+10
无需登陆也可“点赞”支持作者
分享到:
评论

使用道具 举报

热门推荐