生信碱移

贝叶斯网络聚类

CANclust是一种基于贝叶斯的聚类方法,系统性地对基因突变、细胞遗传学信息和临床指标进行联合建模,用于多种模态数据的联合聚类分析,并识别在患者群体中反复出现的特征模式。

个体的遗传与环境背景决定其应对疾病的反应状态,进而产生单一疾病的不同疾病分型。不同疾病分型的病人具有高度异质性,但在临床表现和基因特征上可能存在显著重叠。比如,髓系肿瘤包括急性髓系白血病(AML)、骨髓增生异常综合征(MDS)、慢性髓单核细胞白血病(CMML)和骨髓增殖性肿瘤(MPN)等多个疾病类型,他们之间并非截然分离,而是构成一个连续谱系,其中MDS、CMML 和 MPN 等可进一步进展为AML。

尽管近年来临床分型方法已经逐步由传统临床指标向突变特征转变,但当前分类体系仍面临三大问题:

  1. 异质性显著:即使是同一疾病,患者在临床表现、预后以及治疗响应方面存在广泛的差异;

  2. 变量组合十分复杂:基因组层面驱动突变数量众多、相互组合多样,临床协变量(如血液、骨髓指标)与遗传因素的联合分析复杂度极高;

  3. 聚类方法有限:多数已有聚类研究仅关注基因层面,忽略了临床协变量在亚型识别中的重要性,同时现有的方法在建模中无法体现不同变量类型的差异角色。

为此,来自瑞士生物信息学研究所的研究人员开发了一种基于贝叶斯网络的协变量校正聚类方法(CANclust),于2025年4月30日发表于Nature Communications[IF: 14.7]。CANclust从数据整体视角出发,系统性地对基因突变、细胞遗传学信息和临床指标进行联合建模,用于多种模态数据的联合聚类分析。作者在正文中利用模拟、TCGA、自测数据进行了验证分析,不过像聚类结果出来以后一些套路性的分析比如免疫治疗那些都可以做起来了

图片

▲ DOI:10.1038/s41467-025-59374-1。 

简单来讲,CANclust通过建模变量之间的概率关系,识别在患者群体中反复出现的特征模式。对于每一个潜在的患者亚型(聚类结果),该方法都会用一个贝叶斯网络来描述变量间的特征组合,所以不仅考虑了单个特征,也关注了特征变量之间的协同变化。不理解也没关系,反正使用这个聚类方法我们可以除了获得样本聚类结果以外,还能够获得不同聚类特异性的特征交互网络。

图片

▲ CANcluster原理。该方法以患者在确诊时的基线数据为输入(图左),包括不同癌症类型(左侧颜色区分)、基因突变信息(左上)和临床协变量(左下)。在建模过程中,通过区分协变量类型:Cluster-independent 协变量(如年龄、性别)被设定为仅向突变变量发出边(图右虚线),用于建模其对突变发生的影响,并在聚类时进行统计校正;Cluster-dependent 协变量(如癌症类型)则被视为可能由突变决定的结果变量,可与突变变量共同参与聚类建模。随后贝叶斯网络对不同潜在亚型中的变量依赖结构进行建模(右侧蓝色图结构),每个亚型对应一个特有的网络模型,反映其内在的突变模式与协变量关联结构(图右实线)。通过联合学习网络结构与患者归属(图右下),该方法能够在控制已知协变量影响的基础上,识别出具有生物学一致性和临床解释力的全新患者亚群。

图片

▲ 样本聚类结果演示。一个点代表一个样本,左图为样本真实的癌症类型;右图为对应的聚类结果,总共有A,B,C,D,E,F,G,H,I九个聚类簇。上图为作者NC文章中的结果,表明该方法能够发现新的临床亚型。

图片

▲ 两种癌症中的特异性网络。除了突变特征以外,还有性别、年龄等临床信息。实线代表正相关,而虚线代表负相关。

01.R包安装

该R包在CRAN中提供,可以使用以下代码进行安装:

install.packages("clustNet")

02.使用示例

①示例数据加载:

library(clustNet)# 模拟数据
ss <- c(400, 500, 600) # samples in each cluster
simulation_data <- sampleData(k_clust = k_clust, n_vars = 20, n_samples = ss)
sampled_data <- simulation_data$sampled_data

模拟了一个基因突变的数据,行是样本共1500个,列是基因共20个。这个数据可以换成其它类型的数据,但是必须是0或1的类别变量。下面简单来看一下:

dim(sampled_data)
#[1] 1500   20# 因为是基因突变数据,所以0/1分别代表无或有突变
sampled_data[1:5, 1:5][,1] [,2] [,3] [,4] [,5]
[1,]    1    0    0    0    1
[2,]    0    1    1    1    0
[3,]    1    0    0    0    0
[4,]    1    0    1    0    0
[5,]    0    0    1    0    0

② 使用get_clusters函数进行聚类,可以指定聚类数量(下面是指定聚为3类)。需要注意一下,sampled_data必须是0/1的变量;n_bg参数默认为0,可以用于指定需要调整的协变量如性别年龄等,但是需要放在sample_data的最后n_bg列(所以默认的0则意味着不需要考虑任何的协变量)。

k_clust <- 3 # 选定聚类为3类
cluster_results <- get_clusters(sampled_data, k_clust = k_clust, n_bg = 0)

可视化一下聚类的结果图:

library(car)
library(ks)
library(graphics)
library(stats)# 2D降维结果
density_plot(cluster_results)

图片

③ 可视化一下聚类特异性特征网络:

library(ggplot2)
library(ggraph)
library(igraph)
library(ggpubr)# 可视化
plot_clusters(cluster_results)

图片

各位老铁51快乐啊

得到工作日了

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/web/78888.shtml
繁体地址,请注明出处:http://hk.pswp.cn/web/78888.shtml
英文地址,请注明出处:http://en.pswp.cn/web/78888.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【算法】随机快速排序和随机选择算法

文章目录 1、随机快速排序1.1 什么是随机快排1.2 随机快排的好处 2、随机选择算法 前言&#xff1a; 快速排序就是每次划分前&#xff0c;通过一种方法将一个基准值的位置确定好&#xff0c;再进入不同的部分重复相同的工作以此确定好每个值的位置以达到有序。如果你之前并不了…

网络技术基础,NAT,桥接,交换机,路由器

什么是NAT Network Address Translation&#xff08;网络地址转换&#xff09;&#xff0c;它负责将目标IP或源IP进行了改变&#xff0c;相当于一个中间代理&#xff0c;我们家庭常用的路由器就是一个NAT设备&#xff0c;NAT是为了解决IPv4的IP地址快要耗尽的问题&#xff0c;…

DVWA靶场保姆级通关教程--03CSRF跨站请求伪造

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 目录 文章目录 前言 一、low级别的源码分析 二、medium级别源码分析 安全性分析 增加了一层 Referer 验证&#xff1a; 关键点是&#xff1a;在真实的网络环境中&a…

【Ansible自动化运维实战:从Playbook到负载均衡指南】

本文是「VagrantVirtualBox虚拟化环境搭建」的续篇&#xff0c;深入探索Ansible在自动化运维中的核心应用&#xff1a; ✅ Ansible核心技能&#xff1a;Playbook编写、角色&#xff08;Roles&#xff09;模块化、标签&#xff08;Tags&#xff09;精准控制 ✅ 实战场景覆盖&a…

基于STM32、HAL库的STC31-C-R3气体传感器驱动程序设计

一、简介: STC31-C-R3是Sensirion公司推出的一款基于CMOSens技术的CO2传感器,具有以下特点: 测量范围:0-100%体积浓度 I2C数字接口 低功耗设计 高精度和长期稳定性 小尺寸封装(5mm x 5mm) 二、硬件接口: STC31-C-R3 STM32L4xx ---------------------------- VDD (P…

Nginx篇之限制公网IP访问特定接口url实操

一、nginx配置限制IP访问 要在 Nginx 配置中添加 IP 限制&#xff0c;阻止来自指定公网 IP 地址段的访问&#xff0c;并且只对特定路径进行限制&#xff0c;可以在 location 配置中使用 deny 和 allow 指令来控制访问。 二、案例 1. 需求 对来自特定公网的地址段&#xff0…

算法研习:无重复字符的最长子串问题剖析

算法研习:无重复字符的最长子串问题剖析 一、引言 在算法的广袤天地中,字符串相关问题一直是备受关注的焦点。“无重复字符的最长子串”这一问题,不仅在面试中频繁出现,更是对算法思维和编程技巧的一次深度考验。它要求我们从给定字符串中找出不含有重复字符的最长子串的长…

Spring Cloud Gateway路由+断言+过滤

目录 介绍核心功能三大核心Route以服务名动态获取URLPredicate常用断言Path Route PredicateAfter Route PredicateBefore Route PredicateBetween Route PredicateCookie Route PredicateHeader Route PredicateHost Route PredicateQuery Route PredicateRemoteAddr Route Pr…

springboot集成langchain4j记忆对话

流式输出 LLM 一次生成一个标记&#xff08;token&#xff09;&#xff0c;因此许多 LLM 提供商提供了一种方式&#xff0c;可以逐个标记地流式传输响应&#xff0c;而不是等待整个文本生成完毕。 这显著改善了用户体验&#xff0c;因为用户不需要等待未知的时间&#xff0c;几…

【SpringCloud GateWay】Connection prematurely closed BEFORE response 报错分析与解决方案

一、背景 今天业务方调用我们的网关服务报错: Connection prematurely closed BEFORE response二、原因分析 三、解决方案 第一步: 增加 SCG 服务的JVM启动参数,调整连接获取策略。 将连接池获取策略由默认的 FIFO&#xff08;先进先出&#xff09;变更为 LIFO&#xff08…

使用ZYNQ芯片和LVGL框架实现用户高刷新UI设计系列教程(第十一讲)

这一期讲解lvgl中下拉框的基础使用&#xff0c;下拉列表允许用户从选项列表中选择一个值&#xff0c;下拉列表的选项表默认是关闭的&#xff0c;其中的选项可以是单个值或预定义文本。 当单击下拉列表后&#xff0c;其将创建一个列表&#xff0c;用户可以从中选择一个选项。 当…

【神经网络与深度学习】VAE 在解码前进行重参数化

在 VAE 中&#xff0c;解码之前进行重参数化主要有以下几个重要原因&#xff1a; 可微分性 在深度学习里&#xff0c;模型是通过反向传播算法来学习的&#xff0c;而这需要计算梯度。若直接从潜在变量的分布 (q_{\theta}(z|x))&#xff08;由编码器输出的均值 (\mu) 和方差 (…

BBDM学习笔记

1. configs 1.1 LBBDM: Latent BBDM [readme]

mysql主从复制搭建,并基于‌Keepalived + VIP实现高可用

以下是基于 ‌Keepalived VIP‌ 实现 MySQL 主从复制高可用的详细步骤&#xff0c;涵盖主从复制搭建与故障自动切换&#xff1a; 一、MySQL 主从复制搭建&#xff08;基础步骤回顾&#xff09; 1. ‌主库&#xff08;Master&#xff09;配置‌ 修改配置文件‌ /etc/my.cnf&…

CD36.【C++ Dev】STL库的string的使用 (下)

目录 1.reserve函数(不是reverse) 代码示例 2.resize 代码示例 3.reserve和resize的区别 4.shrink_to_fit 代码示例 5.与C语言的配合的接口函数: c_str 代码示例 6.rfind 知识回顾:find函数 rfind 代码示例 练习题: 字符串最后一个单词的长度 代码 提交结果 ​…

STM32的网络天气时钟项目

一、项目概述与硬件架构 1.1 核心功能 本智能天气时钟系统集成了实时天气获取、网络时间同步、环境监测和低功耗管理四大核心功能&#xff1a; 网络数据获取&#xff1a; 通过ESP8266 WiFi模块连接心知天气API&#xff08;每小时更新&#xff09;获取北京标准时间服务器的时…

FPGA DDR4多通道管理控制器设计

DDR4控制器一般采用自带的MIG控制器&#xff0c;用户控制主要是基于MIG IP核进行设计 实际工程项目中可能只挂载了一组DDR&#xff0c;但是用户数据可能有很多种&#xff0c;用户通过给每种数据划分特定地址进行存储&#xff0c;如何实现灵活管理成为设计的关键 为了方便后端数…

低代码 x AI,解锁数智化应用的创新引擎

AI 智能体开发指南 随着全球信息化浪潮的持续推进&#xff0c;数字化、智能化转型已成为企业发展的必经之路。在这个变革的时代&#xff0c;企业面临着前所未有的挑战与机遇。一方面&#xff0c;市场环境瞬息万变&#xff0c;企业需要快速响应并调整业务模式&#xff1b;另一方…

【Spring Boot 注解】@Configuration与@AutoConfiguration

文章目录 Configuration与AutoConfiguration一、Configuration二、AutoConfiguration Configuration与AutoConfiguration 一、Configuration 这是最常用的 Spring 注解之一&#xff0c;表示当前类是一个 配置类&#xff0c;可以定义 Bean 方法&#xff0c;等效于传统的 XML 配…

arXiv论文 MALOnt: An Ontology for Malware Threat Intelligence

文章讲恶意软件威胁情报本体。 作者信息 作者是老美的&#xff0c;单位是伦斯勒理工学院&#xff0c;文章是2020年的预印本&#xff0c;不知道后来发表在哪里&#xff08;没搜到&#xff0c;或许作者懒得投稿&#xff0c;也可能是改了标题&#xff09;。 中心思想 介绍开源…