当前位置: 首页 > news >正文

基于R的linkET包qcorrplot可视化Mantel test相关性网络热图分析correlation heatmap

写在前面

需求是对瘤胃宏基因组结果鉴定到的差异菌株与表观指标、瘤胃代谢组、血清代谢组、牛奶代谢组中有差异的部分进行关联分析,效果图如下:

image-20230926151159439

数据准备

逗号分隔的csv格式文件,两个表格,一个是每个样本对应的表观指标数据,另一个是每个样本对应的菌群丰度,我这里用的是genus水平

  • 需要关联的表观数据rumen.csv

image-20230926151926227

  • 不同样本的菌群丰度genus.csv

image-20230926152040334

R包linkET可视化

  • 装包
install.pakages("linkET")
library(linkET)

如果报错R版本有问题装不上(我的4.3.1版本R出现了这个报错)请尝试:

install.packages("devtools")
devtools::install_github("Hy4m/linkET", force = TRUE)
packageVersion("linkET")
  • 读取数据
library(ggplot2)
rumen <- read.csv("rumen.csv",sep=",",row.name=1,stringsAsFactors = FALSE,check.names = FALSE)
genus <- read.csv("genus.csv",sep=",",row.name=1,stringsAsFactors = FALSE,check.names = FALSE)
#如果报错row.names重复错误请检查数据格式是否为csv
  • rumen.csv组内相关系数
matrix_data(list(rumen = rumen)) %>% as_md_tbl()
correlate(rumen) %>% as_matrix_data()
correlate(rumen) %>% as_md_tbl()correlate(rumen) %>% as_md_tbl() %>% qcorrplot() +geom_square()#如果对“%>%”功能报错,装具有此功能的包即可,比如dplyrlibrary(vegan)
correlate(rumen, genus, method = "spearman") %>% qcorrplot() +geom_square() +geom_mark(sep = '\n',size = 3, sig_level = c(0.05, 0.01, 0.001),sig_thres = 0.05, color = 'white') + #添加显著性和相关性值scale_fill_gradientn(colours = RColorBrewer::brewer.pal(11, "RdBu"))

在这里插入图片描述

  • 两个表格进行关联生成相关性矩阵图,带显著性标记
library(vegan)
correlate(rumen, genus, method = "spearman") %>% qcorrplot() +geom_square() +geom_mark(sep = '\n',size = 3, sig_level = c(0.05, 0.01, 0.001),sig_thres = 0.05, color = 'white') + #添加显著性和相关性值scale_fill_gradientn(colours = RColorBrewer::brewer.pal(11, "RdBu"))
image-20230926155801309
  • 加工可视化
library(dplyr)
mantel <- mantel_test(rumen, genus,spec_select = list(Milk_yeild=1,Milk_fat=2,Urea_Nitrogen=3,Butyric_acid=4,Valeric_acid=5,BUN=6,T_AOC=7,SOD=8,MDA=9,IgA=10,IgG=11))%>% mutate(rd = cut(r, breaks = c(-Inf,  0.5, Inf),labels = c("< 0.5", ">= 0.5")),pd = cut(p, breaks = c(-Inf, 0.01, 0.05, Inf),labels = c("< 0.01", "0.01 - 0.05", ">= 0.05")))qcorrplot(correlate(genus), type = "lower", diag = FALSE) +geom_square() +geom_mark(sep = '\n',size = 1.8, sig_level = c(0.05, 0.01, 0.001),sig_thres = 0.05,color="white") +geom_couple(aes(colour = pd, size = rd), data = mantel, curvature = nice_curvature()) +scale_fill_gradientn(colours = RColorBrewer::brewer.pal(11, "RdBu")) +scale_size_manual(values = c(0.5, 1, 2)) +scale_colour_manual(values = color_pal(3)) +guides(size = guide_legend(title = "Mantel's r",override.aes = list(color = "black"), order = 2),colour = guide_legend(title = "Mantel's p", override.aes = list(size = 3), order = 1),fill = guide_colorbar(title = "Pearson's r", order = 3))

在这里插入图片描述

  • 不显著的灰色连接线部分也可以去掉让画面更干净。其余细节去AI加工即可。

相关文章:

基于R的linkET包qcorrplot可视化Mantel test相关性网络热图分析correlation heatmap

写在前面 需求是对瘤胃宏基因组结果鉴定到的差异菌株与表观指标、瘤胃代谢组、血清代谢组、牛奶代谢组中有差异的部分进行关联分析&#xff0c;效果图如下&#xff1a; 数据准备 逗号分隔的csv格式文件&#xff0c;两个表格&#xff0c;一个是每个样本对应的表观指标数据&…...

IOTDB的TsFile底层设计

目录 概述 数据模型 数据结构 元数据注册 读取和写入 设计思想 主要过程...

MATLAB算法实战应用案例精讲-【人工智能】边缘计算(补充篇)

目录 前言 算法原理 传统边缘检测算子 构建通用的边缘检测算子 图...

Linux学习-HIS系统部署(1)

Git安装 #安装中文支持&#xff08;选做&#xff09; [rootProgramer ~]# echo $LANG #查看当前系统语言及编码 en_US.UTF-8 [rootProgramer ~]# yum -y install langpacks-zh_CN.noarch #安装中文支持 [rootProgramer ~]# vim /etc/locale.co…...

Cairo介绍及源码构建安装(3)

接前一篇文章&#xff1a;Cairo介绍及源码构建安装&#xff08;2&#xff09; 四、Cairo构建与安装 2. 配置 BLFS中给出的命令为&#xff1a; ./configure --prefix/usr \--disable-static \--enable-tee 这里将“--prefix”选项由“/usr”调整为“/usr/local”&#x…...

Mac电脑信息大纲记录软件 OmniOutliner 5 Pro for Mac中文

OmniOutliner 5 Pro是一款专业级的Mac大纲制作工具&#xff0c;它可以帮助用户更好地组织和管理信息&#xff0c;以及制作精美的大纲。以下是OmniOutliner 5 Pro的主要功能和特点&#xff1a; 强大的大纲组织和管理功能。OmniOutliner 5 Pro为用户提供了多层次的大纲结构&…...

linux设置应用开机自启(通用:mysql、jar、nginx、solr...)

1. 业务场景 用于单机生产环境&#xff0c;防止服务器断电或者强制重启导致的服务下线。 2. 实现方案 对于无状态服务&#xff0c;可容器部署设置 restart: always&#xff0c;systemctl eable docker对于有状态服务&#xff0c;可编写自启脚本&#xff0c;如下 ① 编写执行…...

Offset Explorer(Kafka消息可视化工具)报invalid hex digit ‘{‘错误解决方法

解决办法&#xff1a; 根据代码的实际情况&#xff0c;设置成对应的值。设置完成后点update、refresh更新。...

深度学习:模型训练过程中Trying to backward through the graph a second time解决方案

1 问题描述 在训练lstm网络过程中出现如下错误&#xff1a; Traceback (most recent call last):File "D:\code\lstm_emotion_analyse\text_analyse.py", line 82, in <module>loss.backward()File "C:\Users\lishu\anaconda3\envs\pt2\lib\site-packag…...

【数值计算方法】非线性方程(组)和最优化问题的计算方法:非线性方程式求根的二分法、迭代法、Newton 迭代法及其Python实现

目录 一、非线性方程式求根 1、二分法&#xff08;Bisection Method、对分法&#xff09; a. 理论简介 b. python实现 2、迭代法&#xff08;Iterative Method&#xff09; a. 理论简介 b. python实现 3、Newton 迭代法&#xff08;Newtons Method&#xff09; a. 理论…...

linux主机名

title: linux主机名 createTime: 2020-10-29 18:05:52 updateTime: 2020-10-29 18:05:52 categories: linux tags: Linux系统的主机名 查询主机名 hostnamehostnamectl 修改主机名 hostnamectl set-hostname <newhostname>...

前端uniapp图片select联动文本切换

图片 代码 <template><!-- 这个是uniapp的下拉框 --><uni-data-select v-model"pay_type" :localdata"range" change"handleSelectChange"></uni-data-select><!-- 图片 --><image :src"dynamicImage&qu…...

java - 包装类

目录 前言 一 什么是包装类? 1.获取包装类的两种方式(了解)(已经淘汰) 2.两种方式获取对象的区别(掌握) 3.自动装箱&&自动装箱 4.Integer常用方法 总结 前言 大家好,今天给大家讲解一下包装类 一 什么是包装类? 在Java中&#xff0c;每个基本数据类型都有对应…...

防火墙基础

目录 1、 防火墙支持那些NAT技术&#xff0c;主要应用场景是什么&#xff1f; 2、当内网PC通过公网域名解析访问内网服务器时&#xff0c;会存在什么问题&#xff0c;如何解决&#xff1f; 3、防火墙使用VRRP实现双机热备时会遇到什么问题&#xff0c;如何解决&#xff1f; 4…...

服务断路器_Resilience4j的断路器

断路器&#xff08;CircuitBreaker&#xff09;相对于前面几个熔断机制更复杂&#xff0c;CircuitBreaker通常存在三种状态&#xff08;CLOSE、OPEN、HALF_OPEN&#xff09;&#xff0c;并通过一个时间或数量窗口来记录当前的请求成功率或慢速率&#xff0c;从而根据这些指标来…...

微信小程序学习笔记3.0

第3章 资讯类:仿今日头条微信小程序 3.1 需求描述及交互分析 需求描述 仿今日头条微信小程序,要具有以下功能。 (1)首页新闻频道框架设计,包括底部标签导航设计、新闻检索框设计及新闻频道滑动效果设计。 (2)首页新闻内容设计,包括新闻标题、新闻图片及新闻评论设计…...

nginx 反向代理 负载均衡 动静分离

一样东西的诞生通常都是为了解决某些问题&#xff0c;对于 Nginx 而言&#xff0c;也是如此。 比如&#xff0c;你出于无聊写了一个小网站&#xff0c;部署到 tomcat 之后可以正常访问 但是后来&#xff0c;你的这个小网站因为内容很诱人逐步的火了&#xff0c;用户越来越多&a…...

Codeanalysis(tca)后端二次开发环境搭建

先试用官方脚本文件件quick_install.sh将整个项目启动起来&#xff0c;然后到每个微服务下查看每个服务的pid进程&#xff0c;需要调试哪个先把对应的微服务关闭手动启动&#xff0c;具体启动流程如下&#xff1a; cd 到项目根目录下 source script\config.sh # 激活系统环境…...

JS前端树形Tree数据结构使用

前端开发中会经常用到树形结构数据&#xff0c;如多级菜单、商品的多级分类等。数据库的设计和存储都是扁平结构&#xff0c;就会用到各种Tree树结构的转换操作&#xff0c;本文就尝试全面总结一下。 如下示例数据&#xff0c;关键字段id为唯一标识&#xff0c;pid为父级id&am…...

Automation Anywhere推出新的生成式AI自动化平台,加速提高企业生产力

在9 月 19 日的Imagine 2023 大会上&#xff0c;智能自动化领域的领导者 Automation Anywhere 宣布对其自动化平台进行扩展。推出了新的 Responsible AI Layer&#xff0c;并宣布了四项关键产品更新&#xff0c;包括全新的 Autopilot&#xff0c;它可以利用生成式 AI &#xff…...

电缆隧道在线监测系统:提升电力设施安全与效率的关键

随着城市化进程的加快&#xff0c;电力电缆隧道在保障城市电力供应方面的地位日益重要。然而&#xff0c;电缆隧道环境复杂&#xff0c;容易受到多种因素影响&#xff0c;如温度、湿度、烟雾、水位等&#xff0c;严重威胁电力设施的安全与稳定运行。在此背景下&#xff0c;电缆…...

Java BigDecimal 详解

目录 一、BigDecimal 1、简介 2、构造器描述 3、方法描述 4、使用 一、BigDecimal float和double类型的主要设计目标是为了科学计算和工程计算。他们执行二进制浮点运算&#xff0c;这是为了在广域数值范围上提供较为精确的快速近似计算而精心设计的。然而&#xff0c;它…...

简述信息论与采样定理

信息论 香农信息论发表于1948/1949年&#xff0c;它由三部分组成&#xff1a;信号采样、信源编码、信道编码&#xff1b; 信号采样&#xff1a;采样理论研究在何种条件下对连续信号进行采样&#xff0c;从而得到的离散型号可以可逆地恢复出采样前的连续信号。采样得到的离散实…...

网络安全之网站常见的攻击方式

这是作者自学的哈&#xff0c;不算课程内容。 网页中出现大量黑链 网站看着很正常&#xff0c;但是会隐藏一些链接。网页的链接几乎都是标签&#xff0c;这种黑链就是通过链接标签<a></a>或者script在里面链入恶意脚本&#xff0c;等待浏览者的访问&#xff0c;通…...

iOS Swift 拍照识别数字(Recognizing Text in Images)

可以用腾讯云 OCR的iOS demo - 腾讯云 苹果官方的解决方案&#xff08;识别度太低&#xff09; Recognizing Text in Images - apple developer Extracting phone numbers from text in images(Sample Code) - apple developer import UIKit import Visionclass ViewContro…...

数学建模:智能优化算法及其python实现

数学建模:智能优化算法及其python实现 智能优化算法简介差分进化算法(Differential Evolution,DE)遗传算法(Genetic Algorithm,GA)粒子群优化算法(Particle Swarm Optimization,PSO)模拟退火算法(Simulated Annealing,SA)蚁群算法(Ant Colony Optimization,ACO)…...

monkeyrunner环境搭建和初步用法

一、打开模拟器 运行monkeyrunner之前必须先运行相应的模拟器&#xff0c;不然monkeyrunner无法连接设备。 用Elipse打开Android模拟器或在CMD中用Android命令打开模拟器。这里重点讲一下在CMD中用Android命令打开模拟器 命令&#xff1a;emulator -avd test &#xff08;注…...

2024华为校招面试真题汇总及其解答(一)

1. 我问你点java基础的问题吧,你平时都用什么集合啊,都什么情况下使用 在 Java 中,常用的集合有以下几种: List:有序集合,可以重复,常用实现类有 ArrayList、LinkedList、Vector。Set:无序集合,不能重复,常用实现类有 HashSet、TreeSet。Map:键值对集合,键不能重复…...

css调整字体间距 以及让倾斜字体

调整字体间距 .element {letter-spacing: 2px; /* 调整为适当的值 */ }倾斜字体1 .element {font-style: italic; }请注意&#xff0c;不是所有的字体都有斜体样式可用。如果字体本身没有斜体版本&#xff0c;则可能无法实现完全的斜体效果。 倾斜字体2 <span class"…...

工具篇 | Gradle入门与使用指南 - 附Github仓库地址

介绍 1.1 什么是Gradle&#xff1f; Gradle是一个开源构建自动化工具&#xff0c;专为大型项目设计。它基于DSL&#xff08;领域特定语言&#xff09;编写&#xff0c;该语言是用Groovy编写的&#xff0c;使得构建脚本更加简洁和强大。Gradle不仅可以构建Java应用程序&#x…...

网站建设制作设计开发福建/网络营销的推广方式都有哪些

Python使用Try Exception来处理异常机制 若Exception中有Try对应的异常处理&#xff0c;则Try - exception之后的代码将被执行&#xff0c;但若Try - exception中没有对应的代码&#xff0c;则程序抛出Traceback停止运行 那么else finally就是针对这两种情况带来的后果分别相应…...

请将网站首页底部的备案号/福州seo兼职

设计模式 - 装饰者模式 指在不改变原有对象的基础上&#xff0c;将功能附加到对象上&#xff0c;比继承更加灵活。 适用场景&#xff1a; &#xff08;1&#xff09;扩展一个类的功能或给一个类添加附加职责&#xff1b; &#xff08;2&#xff09;动态给一个对象添加功能&…...

wordpress 深色主题/如何在百度推广网站

Qt Quick基础用法1. 简介1.1 Qt Widgets 与 QML/Qt Quick2. QML与QtQuick2.1 QtQuick 1.x VS QtQuick 2.x3. 信号&#xff08;Signal &#xff09;与槽&#xff08;Slot&#xff09;4. QML与C混合编程4.1 原理和方法4.2 QML访问C 类 (QML>C)4.2.1 信号和槽4.2.2 把类注册到Q…...

长沙优化网站服务/百度双十一活动

浏览&#xff1a;158发布日期&#xff1a;2014/05/14分类&#xff1a;技术分享关键字&#xff1a; win8wamp前几天心血来潮买了笔记本Thinpad T440 自带的win8系统&#xff0c;本来想换了的&#xff0c;想想挺可惜&#xff0c;就没换&#xff0c;安装软件&#xff0c;一路顺畅&…...

坪洲网站建设/网站域名综合查询

记录2021919的一个关于企业对数据人才的能力需求的讲座&#xff1a; 算法面试重点考察&#xff1a; 1、反向传播手推 2、CNN公式&#xff08;核心部分&#xff09; why &#xff1f; 3、python ok 会问C 4、重点关注工程能力&#xff0c;包括语法、 设计模式&#xff08…...

网站建设独立/推广服务公司

本篇文章主要介绍了深入理解Commonjs规范及Node模块实现&#xff0c;小编觉得挺不错的&#xff0c;现在分享给大家&#xff0c;也给大家做个参考。一起跟随小编过来看看吧前面的话 Node在实现中并非完全按照CommonJS规范实现&#xff0c;而是对模块规范进行了一定的取舍&#x…...