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

文献阅读:tidyomics 生态系统:增强组学数据分析

文献介绍

alt

文献题目: The tidyomics ecosystem: enhancing omic data analyses
研究团队: Stefano Mangiola(澳大利亚沃尔特和伊丽莎·霍尔医学研究所)、Michael I. Love(美国北卡罗来纳大学教堂山分校)、Anthony T. Papenfuss(澳大利亚沃尔特和伊丽莎·霍尔医学研究所)
发表时间: 2024-06-14
发表期刊: Nature Methods
影响因子: 36.1
DOI: 10.1038/s41592-024-02299-2

摘要

组学数据的增长给数据操作、分析和整合带来了不断变化的挑战。为了应对这些挑战,Bioconductor 提供了一个广泛的社区驱动的生物数据分析平台。同时,tidy R 编程提供了革命性的数据组织和操作标准。在这里,作者展示了 tidyomics 软件生态系统,将 Bioconductor 与 tidy R 范式连接起来。该生态系统旨在简化组学分析、简化学习并鼓励跨学科合作。作者通过分析人类细胞图谱中的 750 万个外周血单核细胞,涵盖六个数据框架和十个分析工具,证明了 tidyomics 的有效性。

前言

基因组学、表观基因组学、转录组学、空间分析和多组学的高通量技术彻底改变了生物医学研究,为数据操作、探索、分析、整合和解释带来了机遇和挑战。为了应对这些挑战,科学界开发了用于数据组织和专门操作的面向对象框架。

为了应对软件领域的复杂性,Bioconductor 已成为用于组学数据分析的首要 R 软件存储库和平台。Bioconductor 为数据处理工作流程和统计分析提供国际标准化和互操作性。凭借广泛的注释资源和链接元数据的标准化数据格式,Bioconductor 促进了可重复性和社区驱动的开源开发。

最近,tidy R 范式和 tidyverse 软件生态系统通过优先考虑直观的数据表示和操作而不是复杂的数据结构和语法,改变了基于 R 的数据科学。该范式使用表格来表示数据,将变量作为列,将观察结果作为行。它通过使用标准化和自然语言词汇的管道中连接的操作来简化数据操作。tidyverse 的组件被列为最常下载的 R 包,并在全球数据科学和生物信息学项目中广泛教授。

Bioconductor 在很大程度上仍然独立于 tidyverse 生态系统。通过提供标准数据格式和分析的 tidy 接口,在这两个生态系统之间架起一座桥梁,将使研究人员能够将注意力从技术挑战转移到生物学问题。此外,利用数据科学教育标准将降低分析不同组学数据的进入门槛。

研究结果

1. tidyomics 生态系统概览

在这篇 Brief Communication 中,作者介绍了 tidyomics,这是一个可互操作的软件生态系统,它将 Bioconductor 和其他组学分析框架(例如 Seurat)与 tidyverse 连接起来。该生态系统可以通过 Bioconductor 中提供的单个 meta-package 进行安装。tidyomics 包括三个新软件包:tidySummarizedExperiment、tidySingleCellExperiment、tidySpatialExperiment,以及五个公开可用的 R 软件包:plyranges、nullranges、tidyseurat、tidybulk、tidytof。重要的是,虽然 tidyomics 以整齐的格式表示组学数据(Fig. 1a),但它保持原始数据容器和方法不变,确保与现有软件的兼容性、可维护性和长期 Bioconductor 支持。

Fig. 1 tidyomics 生态系统概览
Fig. 1 tidyomics 生态系统概览

a. 数据接口图显示了不同数据容器的一致数据表示。六边形图标代表每个数据容器的兼容 R 包。
b. R/Bioconductor 中丰富数据对象的景观,以 tidyomics 动词作为连接这些对象的路径。数据容器由圆角矩形和将它们连接为白框的函数表示。SPE, SpatialExperiment; SCE, SingleCellExperiment; SE, SummarizedExperiment。
c. 左:简洁的 tidy 语法与复杂的结果和输入数据容器之间的对比。右图:示例工作流程包括数据、生物分析、数据/结果操作和总结、不同的数据结构、可视化和结果图。粉色区域包括跨组学共享语法的基础设施。
d. tidyomics 社区的参与是多方面的,以一套专为简化数据分析而定制的 R 包为中心。

在 Bioconductor 中,GenomicRanges 将基因组特征组织为行中的范围(例如,基因、外显子、单核苷酸多态性 (SNP) 和 CpGs),并与列中的变量(例如,范围宽度)链接(如 BED 格式)。plyranges 将 dplyr 动词扩展到 GenomicRanges 对象,促进范围整合、重叠分析、汇总和可视化。plyranges 与 nullranges 交互以匹配或 bootstrapping 范围以执行重叠富集分析。

在 Bioconductor 中,SummarizedExperiment 和 SingleCellExperiment 将转录丰度组织为与 metadata 链接的特征/基因样本矩阵。tidyomics 通过提供一个表格界面来概括变量的概念,其中观察值(例如,gene-sample pair)作为行,变量(例如,abundance 和 metadata)作为列。这种方法可以使用 tidyverse 进行复杂的过滤、汇总、分析和可视化。tidybulk 为 bulk 和 pseudobulk 数据提供了整洁且模块化的分析管道。

Bioconductor 的 flowCore 软件包将来自质量、流式和基于序列的细胞计数的数据组织在逐个特征矩阵中,并促进数据操作。tidytof 将 flowCore 与 tidyverse、tidySingleCellExperiment 和 tidySummarizedExperiment 连接起来。

Bioconductor 的 SpatialExperiment 组织来自基于细胞或像素的技术的数据,例如 10x Genomics Xenium、CosMX、Mibi 和 MERSCOPE。tidySpatialExperiment 为具有空间坐标的数据提供了一个 tidy 接口,并提供了专门的操作,例如基于几何和手绘形状的门控。

tidyomics 是一个统一且可互操作的组学技术软件生态系统,涵盖多个组学分析框架。通过转换和连接操作,功能网络连接所有数据容器(Fig. 1b)。这种统一的方法有助于无缝容器切换,减少对由特定领域语法创建的特定框架的依赖,并有效地增加所用工具的范围(Fig. 1c)。

2. tidyomics 生态系统的表现

为了证明 tidyomics 的实用性和可扩展性,作者测试了 750 万个血细胞的外周免疫系统的性别转录组差异。作者的生态系统无缝地连接了六个数据和分析框架(Fig. 2a),展示了一致使用 tidy R 语法而不是混合 base R、DuckDB、Seurat、SingleCellExperiment、SummarizedExperiment、DGEList、GenomicRanges 语法的好处。预处理后,作者使用多级差异表达模型测试了 26 种免疫细胞类型的 15,494 个 pseudobulk 样本(Fig. 2b)。作者发现 T CD4 naive cells、T effectors cells、B memory cells 在性别之间变化最大(Fig. 2c)。大多数与性别相关的转录变化(不包括性染色体)是细胞类型特异性的,而不是共享的(false discovery rate (FDR) <0.05)(Fig. 2d)。作者测试了对 CD4 naive cells 中的性别或其与年龄相互作用具有显着影响 (FDR<0.05) 的基因与三种免疫细胞相关和性别偏见疾病的全基因组关联研究 (GWAS) SNPs 的接近程度:硬化症、类风湿性关节炎和系统性红斑狼疮(Fig. 2e)。作者发现九个基因与这些疾病相关的 SNPs 重叠或接近(IL2RA、CD40、KCP 与两种或多种疾病相关)。很大一部分性别相关基因(41%)定义了不同的免疫衰老轨迹(Fig. 2f)。

Fig. 2 tidyomics 生态系统的表现
Fig. 2 tidyomics 生态系统的表现

a. tidyomics 支持大规模跨框架分析。logos 代表数据和分析框架。连接线代表管道,按对象类型着色。平行线代表并行工作流程。
b. Pseudosample UMAP,按细胞类型着色。NK, natural killer。
c. 按性别从最大到最小变化的细胞类型排名,按 b 着色。
d. 性别影响或其与年龄相互作用的前九种细胞类型之间存在大量基因重叠。
e. CD4 naive cells 中的性别相关基因与多发性硬化症、类风湿性关节炎和系统性红斑狼疮的 GWAS SNPs 的重叠。MS,多发性硬化症;RA,类风湿性关节炎;SLE,系统性红斑狼疮。
f. 与年龄无关的性别效应或性别-年龄相互作用的显着(FDR <0.05)基因的分数。箱线图中心线代表中值,上下铰链代表第一和第三四分位数。下须线从下铰链延伸至四分位距或最低值的 1.5 倍。上须线从上铰链延伸至四分位距或最高值的 1.5 倍。
g. 标准编程和 tidyverse 编程之间的代码可读性比较。展示的两项任务是可视化基因组距离直方图(左)和根据单细胞数据计算多基因特征(右)。
h. tidyomics 生态系统与标准(non-tidy)编程相比的变量、代码行和时间效率的基准测试。这些操作包括每个包的常见操作和分析 (Methods)。

此分析表明 tidyomics 允许跨不同数据源重新利用代码。例如,可以使用模块化、一致的语法组装成紧凑且清晰的管道来执行基因组和转录组数据的复杂操作和可视化(Fig. 2g)。与标准对应物相比,更少的中间变量和代码行提高了易读性和编程简单性,同时不会产生重大的执行时间开销(Fig. 2h)。Tidy R 支持函数式编程(例如,向量化而不是 for 循环),这有助于避免变量更新引起的错误,尤其是在交互式编程中。

讨论

作者专门的开发者社区采用的 Bioconductor 编程标准和贡献指南为生态系统的长期可维护性奠定了坚实的基础(Fig. 1d)。这个生态系统将会不断发展,包括具有兼容目标和来自 Bioconductor 和 CRAN 标准的 R 包。虽然 tidyomics 目前专注于简化和协调,但新颖的分析和操作工具也是其目标之一。

tidyverse 和 Bioconductor 生态系统正在改变基于 R 的数据科学和生物数据分析。tidyomics 弥合了这些生态系统之间的差距,使分析师能够在组学分析中利用 tidy 数据原则的力量。这种整合促进了跨学科合作,减少了新用户的进入障碍,并增强了代码的可读性、可重复性和透明度。适用于生物软件的 tidy 标准创建了一个可扩展的开发生态系统,独立研究人员可以在其中与新软件交互。最终,由新的、公开可用的 R 包组成的 tidyomics 生态系统有可能大大加速科学发现。


--------------- 结束 ---------------

注:本文为个人学习笔记,仅供大家参考学习,不得用于任何商业目的。如有侵权,请联系作者删除。

alt

本文由 mdnice 多平台发布

相关文章:

文献阅读:tidyomics 生态系统:增强组学数据分析

文献介绍 文献题目&#xff1a; The tidyomics ecosystem: enhancing omic data analyses 研究团队&#xff1a; Stefano Mangiola&#xff08;澳大利亚沃尔特和伊丽莎霍尔医学研究所&#xff09;、Michael I. Love&#xff08;美国北卡罗来纳大学教堂山分校&#xff09;、Ant…...

MySQL运维实战之Clone插件(10.1)使用Clone插件

作者&#xff1a;俊达 clone插件介绍 mysql 8.0.17版本引入了clone插件。使用clone插件可以对本地l或远程的mysql实例进行clone操作。clone插件会拷贝innodb存储引擎表&#xff0c;clone得到的是原数据库的一个一致性的快照&#xff0c;可以使用该快照数据来启动新的实例。cl…...

【系统架构设计】数据库系统(三)

数据库系统&#xff08;三&#xff09; 数据库模式与范式数据库设计备份与恢复分布式数据库系统分布式数据库的概念特点分类目标 分布式数据库的架构分布式数据库系统与并行数据库系统 数据仓库数据挖掘NoSQL大数据 数据库模式与范式 数据库设计 备份与恢复 分布式数据库系统…...

免费视频批量横版转竖版

简介 视频处理器 v1.3 是一款由是貔貅呀开发的视频编辑和处理工具&#xff0c;提供高效便捷的视频批量横转竖&#xff0c;主要功能&#xff1a; 导入与删除文件&#xff1a;轻松导入多个视频文件&#xff0c;删除不必要的文件。暂停与继续处理&#xff1a;随时暂停和继续处理。…...

内存管理(知识点)

c语言与c对于内存管理的区别 c语言中动态内存管理方式 malloc\calloc\realloc\free c内存管理方式 c兼容c语言所以c语言中的方式也可以使用 但是用起来太麻烦 所以通过new和delete操作符竞选动态内存管理 单个对象 c语言: int* p2(int*)malloc(sizeof(int)) c : int*p3 new…...

【雷丰阳-谷粒商城 】【分布式高级篇-微服务架构篇】【29】Sentinel

持续学习&持续更新中… 守破离 【雷丰阳-谷粒商城 】【分布式高级篇-微服务架构篇】【29】Sentinel 简介熔断降级什么是熔断什么是降级相同点不同点 整合Sentinel自定义sentinel流控返回数据使用Sentinel来保护feign远程调用自定义资源给网关整合Sentinel参考 简介 熔断降…...

防范UDP Flood攻击的策略与实践

UDP Flood攻击是一种常见的分布式拒绝服务&#xff08;DDoS&#xff09;攻击手段&#xff0c;通过向目标服务器发送大量无效的UDP数据包&#xff0c;消耗其网络带宽和处理资源&#xff0c;最终导致合法的网络服务无法正常运行。本文将深入探讨UDP Flood攻击的原理、常见的防御策…...

昇思25天学习打卡营第17天 | CycleGAN图像风格迁移互换

通过深入学习CycleGAN模型&#xff0c;我对无监督图像到图像的转换技术有了更深的理解。CycleGAN不仅能在没有成对训练样本的情况下实现域之间的转换&#xff0c;而且在保持内容结构的同时成功转换图像风格&#xff0c;这在许多应用中都非常有用&#xff0c;如艺术风格转换、季…...

Leetcode 2520. 统计能整除数字的位数

问题描述&#xff1a; 给你一个整数 num &#xff0c;返回 num 中能整除 num 的数位的数目。 如果满足 nums % val 0 &#xff0c;则认为整数 val 可以整除 nums 。 示例 1&#xff1a; 输入&#xff1a;num 7 输出&#xff1a;1 解释&#xff1a;7 被自己整除&#xff0…...

WEB前端08-综合案例(动态表格)

使用 HTML、CSS 和 JavaScript 创建动态表格 在本教程中&#xff0c;我们将创建一个动态表格&#xff0c;允许用户添加行、选择项目&#xff0c;并执行批量操作&#xff0c;如全选或删除选中的行。我们将通过 HTML、CSS 和 JavaScript 来实现这一功能。让我们逐步了解每个部分…...

【面试题】Redo log和Undo log

Redo log 介绍Redo log之前我们需要了解一下&#xff0c;mysql数据操作的流程&#xff1a; 上述就是数据操作的流程图&#xff0c;可以发现sql语句并不是直接操作的磁盘而是通过操作内存&#xff0c;然后进行内存到磁盘的一个同步。这里我们必须要了解一些区域&#xff1a; 缓…...

开发实战经验分享:互联网医院系统源码与在线问诊APP搭建

作为一名软件开发者&#xff0c;笔者有幸参与了多个互联网医院系统的开发项目&#xff0c;并在此过程中积累了丰富的实战经验。本文将结合我的开发经验&#xff0c;分享互联网医院系统源码的设计与在线问诊APP的搭建过程。 一、需求分析 在开发任何系统之前&#xff0c;首先要…...

springboot系列教程(十六):配置Actuator组件,实现系统监控

一、Actuator简介 1、监控组件作用 在生产环境中&#xff0c;需要实时或定期监控服务的可用性。Spring Boot的actuator&#xff08;健康监控&#xff09;功能提供了很多监控所需的接口&#xff0c;可以对应用系统进行配置查看、相关功能统计等。 2、监控分类 Actuator 提供…...

单臂路由组网实验,单臂路由的定义、适用情况、作用

一、定义 单臂路由是指通过在路由器的一个接口上配置许多子接口,从而实现原来相互隔离的不同VLAN之间的互通。 子接口:把路由器上的实际的物理接口划分为多个逻辑上的接口,这些被划分的逻辑接口就是子接口。 二、适用情况 用在没有三层交换机,却要实现不同VLAN之间的互…...

【数据结构初阶】顺序表三道经典算法题(详解+图例)

Hello&#xff01;很高兴又见到你了~~~ 看看今天要学点什么来充实大脑吧—— 目录 1、移除元素 【思路图解】 【总结】 2、删除有序数组中的重复项 【思路图解】 【总结】 3、合并两个有序数组 【思路图解】 【总结】 至此结束&#xff0c;Show Time&#xff01; 1、…...

SpringBoot接入JPA连接数据库H2或MySQL例子

一&#xff0c;JPA相关的常用注解和对象 Entity&#xff0c;用于实体类声明语句之前&#xff0c;‌指出该Java类为实体类&#xff0c;‌将映射到指定的数据库表&#xff1b;Table&#xff0c;当实体类与其映射的数据库表名不同名时需要使用。‌该标注与Entity标注并列使用&…...

持续集成05--Gogs的安装与使用

前言 在持续集成/持续部署&#xff08;CI/CD&#xff09;的旅程中&#xff0c;版本控制系统是不可或缺的一环。当我们在使用jenkins&#xff0c;想要达到测试脚本有更新&#xff0c;就让项目自动去进行构建&#xff0c;或者当开发脚本有更新&#xff0c;也可以自动去构建的效果…...

C++--fill

把[first,last)之间的元素填充为val。 template<class ForwardIterator, class Type> void fill( ForwardIterator first, //起始迭代器 ForwardIterator last, //结束迭代器 const Type& val //设置的值 );源码剖析 template<class ForwardIterator, c…...

Java:对比一个对象更新前后具体被修改了哪些值

Java&#xff1a;对比一个对象更新前后具体被修改了哪些值 Zyyyyu 的个人博客 遇到一个需求就是要记录每行数据被修改更新后&#xff0c;要记录下当前值和修改前的值 那有人就会说写个if去判断值是否被修改了&#xff0c;然后记录下来不就行了&#xff0c;这是一个思路&#x…...

GO——GMP 好文整理

GMP相关好文推荐&#xff1a; Golang 调度器设计思想、GMP 协程调度模型详解 Golang的协程调度器原理及GMP设计思想 Golang调度器GMP原理与调度全分析...

【网络】每天掌握一个Linux命令 - iftop

在Linux系统中&#xff0c;iftop是网络管理的得力助手&#xff0c;能实时监控网络流量、连接情况等&#xff0c;帮助排查网络异常。接下来从多方面详细介绍它。 目录 【网络】每天掌握一个Linux命令 - iftop工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景…...

1.3 VSCode安装与环境配置

进入网址Visual Studio Code - Code Editing. Redefined下载.deb文件&#xff0c;然后打开终端&#xff0c;进入下载文件夹&#xff0c;键入命令 sudo dpkg -i code_1.100.3-1748872405_amd64.deb 在终端键入命令code即启动vscode 需要安装插件列表 1.Chinese简化 2.ros …...

生成 Git SSH 证书

&#x1f511; 1. ​​生成 SSH 密钥对​​ 在终端&#xff08;Windows 使用 Git Bash&#xff0c;Mac/Linux 使用 Terminal&#xff09;执行命令&#xff1a; ssh-keygen -t rsa -b 4096 -C "your_emailexample.com" ​​参数说明​​&#xff1a; -t rsa&#x…...

C# SqlSugar:依赖注入与仓储模式实践

C# SqlSugar&#xff1a;依赖注入与仓储模式实践 在 C# 的应用开发中&#xff0c;数据库操作是必不可少的环节。为了让数据访问层更加简洁、高效且易于维护&#xff0c;许多开发者会选择成熟的 ORM&#xff08;对象关系映射&#xff09;框架&#xff0c;SqlSugar 就是其中备受…...

全志A40i android7.1 调试信息打印串口由uart0改为uart3

一&#xff0c;概述 1. 目的 将调试信息打印串口由uart0改为uart3。 2. 版本信息 Uboot版本&#xff1a;2014.07&#xff1b; Kernel版本&#xff1a;Linux-3.10&#xff1b; 二&#xff0c;Uboot 1. sys_config.fex改动 使能uart3(TX:PH00 RX:PH01)&#xff0c;并让boo…...

DeepSeek 技术赋能无人农场协同作业:用 AI 重构农田管理 “神经网”

目录 一、引言二、DeepSeek 技术大揭秘2.1 核心架构解析2.2 关键技术剖析 三、智能农业无人农场协同作业现状3.1 发展现状概述3.2 协同作业模式介绍 四、DeepSeek 的 “农场奇妙游”4.1 数据处理与分析4.2 作物生长监测与预测4.3 病虫害防治4.4 农机协同作业调度 五、实际案例大…...

A2A JS SDK 完整教程:快速入门指南

目录 什么是 A2A JS SDK?A2A JS 安装与设置A2A JS 核心概念创建你的第一个 A2A JS 代理A2A JS 服务端开发A2A JS 客户端使用A2A JS 高级特性A2A JS 最佳实践A2A JS 故障排除 什么是 A2A JS SDK? A2A JS SDK 是一个专为 JavaScript/TypeScript 开发者设计的强大库&#xff…...

C++课设:简易日历程序(支持传统节假日 + 二十四节气 + 个人纪念日管理)

名人说:路漫漫其修远兮,吾将上下而求索。—— 屈原《离骚》 创作者:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊) 专栏介绍:《编程项目实战》 目录 一、为什么要开发一个日历程序?1. 深入理解时间算法2. 练习面向对象设计3. 学习数据结构应用二、核心算法深度解析…...

快刀集(1): 一刀斩断视频片头广告

一刀流&#xff1a;用一个简单脚本&#xff0c;秒杀视频片头广告&#xff0c;还你清爽观影体验。 1. 引子 作为一个爱生活、爱学习、爱收藏高清资源的老码农&#xff0c;平时写代码之余看看电影、补补片&#xff0c;是再正常不过的事。 电影嘛&#xff0c;要沉浸&#xff0c;…...

NPOI Excel用OLE对象的形式插入文件附件以及插入图片

static void Main(string[] args) {XlsWithObjData();Console.WriteLine("输出完成"); }static void XlsWithObjData() {// 创建工作簿和单元格,只有HSSFWorkbook,XSSFWorkbook不可以HSSFWorkbook workbook new HSSFWorkbook();HSSFSheet sheet (HSSFSheet)workboo…...