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

基于scRNA-seq的GRN分析三阴性乳腺癌的肿瘤异质性

三阴性乳腺癌即TNBC是一种肿瘤异质性高的乳腺癌亚型。最近的研究表明,TNBC患者可能包含具有不同分子亚型的细胞。此外,基于scRNA-seq数据构建的GRN已经证明了对关键调控因子研究的重要性。作者使用scRNA-seq对TNBC患者的GRN进行了全面分析。从scRNA-seq数据鉴定出545个恶性细胞。根据PAM50模型对恶性细胞进行亚型划分。细胞间通讯分析显示巨噬细胞在肿瘤微环境中起主导作用。接下来,通过整合基因共表达和富集结合基序构建各个亚型的GRN。然后,根据基因的中心性度量来确定关键基因。重要的是,关键基因ETV6在所有亚型中都普遍上调,但它通过调节不同的靶基因在每个亚型中发挥不同的作用。综上所述,基于scRNA-seq数据构建GRN有助于剖析TNBC的肿瘤内异质性,并鉴定TNBC的关键基因。

来自:Single-cell RNA-seq dissects the intratumoral heterogeneity of triple-negative breast cancer based on gene regulatory networks

目录

  • 数据收集和预处理
  • 恶性上皮细胞和乳腺癌亚型的鉴定
  • 细胞-细胞通信和GSVA分析
  • GRN的构建于关键节点识别
  • 功能富集分析和生存分析

数据收集和预处理

从GEO(https:// www.ncbi.nlm.nih.gov/geo/)数据库(GEO: GSE118390)下载了6例TNBC患者(PT039、PT058、PT081、PT084、PT089和PT126)的scRNA-seq数据,该数据库包含1189个高质量细胞,并注释了细胞类型。既往研究表明,乳腺癌的恶性细胞起源于上皮细胞,因此,仅保留868个上皮细胞用于恶性细胞的鉴定。此外,下载了240个正常乳腺上皮细胞的基因表达谱,其中39个作为参考(正常)细胞用于拷贝数估算和正常乳腺上皮细胞GRN构建。此外,从TCGA数据库中获取105例正常和115例TNBC样本的基因表达谱,进行差异基因表达分析。METABRIC数据库收集了186例TNBC患者的临床信息,用于生存分析。

恶性上皮细胞和乳腺癌亚型的鉴定

如先前的研究所述,恶性细胞总是伴随着高变CNV(拷贝数变异)。从基因表达谱中推断出868个上皮细胞的CNV。将240个正常上皮细胞作为CNV推断的参考集。根据基因组位置对基因进行排序,以上游和下游基因的平均基因表达量作为推定CNV。在本研究中,使用了intercnv R包进行CNV估计。在从基因表达谱推断出CNV后,进行层次聚类以识别恶性细胞簇。在亚型鉴定中,CNV高变量的细胞簇被认为是恶性细胞。

根据肿瘤细胞的基因表达谱,采用PAM50模型将肿瘤细胞分为5个亚型(normal-like, basal-like, Her2+, LumA,和LumB),该模型基于50个标记基因(PAM50基因特征)广泛用于乳腺癌亚型鉴定。然后,对基因表达谱进行了log2转化。使用genefu R包的SubPred_pam50函数分配每个乳腺癌细胞的亚型。

细胞-细胞通信和GSVA分析

为了研究不同细胞类型(包括5种分子亚型)的细胞间通讯,首先,从之前的研究中获得了细胞类型注释,包括B细胞、T细胞、巨噬细胞、基质细胞和内皮细胞然后使用python CellPhoneDB(https://www.cellphonedb.org/)包估计两种细胞类型间,配体-受体对在不同细胞类型中的意义,p < 0.05的配体受体对被认为是存在显著相互作用的。

为了测试5种分子亚型的差异激活基因集,首先从分子特征数据库(https://www.gsea-msigdb.org/gsea/ msigdb)下载了50个标记基因集。然后,使用GSVA R包对5个分子亚型进行GSVA分析(基因集变异分析)。

GRN的构建于关键节点识别

利用基因共表达和转录结合基序信息构建了乳腺癌各亚型和正常上皮细胞的GRN。首先,这些TF是从先前的研究中获得的,该研究包含1797个特定的TF,接下来,进行共表达分析,以估计TF和靶基因之间的潜在调节强度,然后,在每个亚型和正常上皮细胞中保留富含TF结合基序的TF-靶基因对。使用python pySCENIC软件包进行共表达和TF结合基序富集分析。

在获得正常上皮细胞和5个分子亚型的GRN后,采用节点中心性指标构建网络中节点的重要性。在本研究中,使用度degree、间度betweenness、特征值eigenvalue、PageRank和接近度closeness来评估节点的中心性。这些指标使用R的igraph包计算。

  • 度是对应节点的相邻节点的个数。高度节点通常被认为是基本的枢纽。
  • 中间度是根据经过相应节点的最短路径数来计算的。高中间度的节点可能成为GRN的瓶颈。
  • 特征值通过考虑邻居的重要性来度量节点的重要性。
  • PageRank是对应节点随机游走的概率。PageRank类似于特征值,而PageRank引入了阻尼因子,默认为0.85。
  • 接近度是对应节点到所有节点的平均距离。接近度高的节点表示该节点位于网络的中心位置。

在计算GRN的每个节点的五个中心性指标后,使用Q统计对每个GRN的五个节点的中心性指标进行整合: Q ( r 1 , r 2 , . . . , r N ) = N ! V N Q(r_1,r_2,...,r_N)=N!V_N Q(r1,r2,...,rN)=N!VN V k = ∑ j = 1 k ( − 1 ) j − 1 V k − j j ! r N − k + 1 j V_k=\sum_{j=1}^{k}(-1)^{j-1}\frac{V_{k-j}}{j!}r_{N-k+1}^{j} Vk=j=1k(1)j1j!VkjrNk+1j其中, V 0 = 1 , N = 5 V_{0}=1,N=5 V0=1,N=5 r i r_{i} ri为第 i i i个中心度量指标, r j r^{j} rj代表 r r r j j j次方。最后,得到了相应GRN中每个节点的Q统计量。前1%的Q统计量被认为是每个GRN中的关键节点。

功能富集分析和生存分析

为了获得TFs在5种分子亚型特异性GRN中的功能,使用DAVID(Database for Annotation, Visualization and Integrated Discovery)在线工具进行GO注释。此外,从以前的研究中下载了与癌症标志物相关的GO术语。为了可视化,只保留了与癌症标志相关的术语。在本研究中,还研究了ETV6在五种分子亚型中的表达以及TNBC患者的临床预后。采用R生存和survminer包评估基因表达和预后意义。该研究流程图如图所示。

fig1

  • 首先,使用scRNA-seq数据推断CNV。根据推断的CNV鉴定出恶性细胞。然后利用PAM50模型对每个细胞进行亚型划分,并对每个亚型构建GRN。其次,计算五个中心性指标来衡量每个GRN中节点的重要性。然后使用Q统计量来整合这些中心性指标。最后,对常见关键基因的不同作用进行了评估。对关键基因进行差异表达分析和生存分析。

fig2

  • 彩色节点表示关键基因。共6类亚型对应的GRN,正常上皮normal epithelial A,normal-like B,basal-like C,Her2+ D,LumA E 和 LumB F。

fig3

  • A:ETV6在每个亚型中调控不同的基因。线条颜色表示不同亚型的ETV6调控。
  • B:各亚型中,被ETV6调控基因的GO注释。彩色点阵表示ETV6调控基因的GO注释。
  • C:ETV6在正常上皮细胞和5种分子亚型中的表达。
  • D:TCGA正常样本和TNBC样本中ETV6的表达。
  • E:基于ETV6表达的METABRIC数据集中TNBC患者的生存分析。低表达的ETV6表现出较好的临床效果。

相关文章:

基于scRNA-seq的GRN分析三阴性乳腺癌的肿瘤异质性

三阴性乳腺癌即TNBC是一种肿瘤异质性高的乳腺癌亚型。最近的研究表明&#xff0c;TNBC患者可能包含具有不同分子亚型的细胞。此外&#xff0c;基于scRNA-seq数据构建的GRN已经证明了对关键调控因子研究的重要性。作者使用scRNA-seq对TNBC患者的GRN进行了全面分析。从scRNA-seq数…...

Python:二进制文件实现等间隔取相同数据量并合并

举例&#xff1a;每3byte为一页&#xff0c;每3页为一wl。将所有wl的第一页/第二页/第三页分别合并为一个文件。 data b\x01\x02\x03\x04\x05\x06\x07\x08\x09\x01\x02\x03\x04\x05\x06\x07\x08\x09\x01\x02\x03\x04\x05\x06\x07\x08\x09\x01\x02\x03\x04\x05\x06\x07\x08\x0…...

python使用openvc库进行图像数据增强

以下是使用Python和OpenCV库实现图像数据增强的简单示例代码&#xff0c;其中包括常用的数据增强操作&#xff1a; import cv2 import numpy as np import os# 水平翻转 def horizontal_flip(image):return cv2.flip(image, 1)# 垂直翻转 def vertical_flip(image):return cv2…...

如何利用Api接口获取手机当前的网络位置信息

在移动互联网时代&#xff0c;手机定位已经成为了一个日常化的需求&#xff0c;无论是导航、社交还是打车等服务都需要获取手机的位置信息。而获取手机位置信息最基础的一步就是获取手机当前的网络位置信息&#xff0c;本文将介绍如何利用API接口获取手机当前的网络位置信息。 …...

vue-elementPlus自动按需导入和主题定制

elementPlus自动按需导入 装包 -> 配置 1. 装包&#xff08;主包和两个插件包&#xff09; $ npm install element-plus --save npm install -D unplugin-vue-components unplugin-auto-import 2. 配置 在vite.config.js文件中配置&#xff0c;配置完重启&#xff08;n…...

idea中dataBase模板生成

controller.java.vm ##定义初始变量 #set($tableName $tool.append($tableInfo.name, "Controller")) ##设置回调 $!callback.setFileName($tool.append($tableName, ".java")) $!callback.setSavePath($tool.append($tableInfo.savePath, "/contro…...

pc端测试手机浏览器运行情况,主要是测试硬件功能

测试h5震动摇晃等功能时不方便测试&#xff0c;需要连电脑显示调试数据 方法&#xff1a; 1.需要手机下载谷歌浏览器&#xff0c;pc端用edge或这谷歌浏览器 2.手机打开USB调试&#xff0c;打开要测试的网页 3.pc端地址栏输入edge://inspect/#devices&#xff08;这里用的edge浏…...

软件概要设计-架构真题(二十五)

软件概要设计包括软件设计的结构、确定系统功能模块及其相互关系&#xff0c;主要采用&#xff08;&#xff09;描述程序的结构。&#xff08;2018年&#xff09; 程序流程图、PAD图和伪代码模块结构图、数据流图和盒图模块结构图、层次图和HIPO图程序流程图、数据流图和层次图…...

CSDN发文表情包整理

文章目录 简介部分Emoji表情符号简表人物自然物品地点符号 各种Emoji表情链接 简介 CSDN支持Markdown语法及Emoji表情&#xff0c;使用各种Emoji表情可以使得自己的博文更加生动多彩。一般有两种在支持Markdown的语法环境中添加Emoji表情&#xff1a;1.直接将表情包复制到文档…...

springBoot对接Apache POI 实现excel下载和上传

搭建springboot项目 此处可以参考 搭建最简单的SpringBoot项目_Steven-Russell的博客-CSDN博客 配置Apache POI 依赖 <dependency><groupId>org.apache.poi</groupId><artifactId>poi</artifactId><version>5.2.2</version> </…...

定积分的计算:牛顿-莱布尼茨公式

目录 牛顿-莱布尼茨公式 用C语言代码实现 利用换元积分法和分部积分法 利用奇偶性和周期性求积分 利用已有公式求积分 牛顿-莱布尼茨公式 牛顿-莱布尼茨公式&#xff08;Newton-Leibniz formula&#xff09;是微积分学中的基本定理之一&#xff0c;它反映了定积分与被积函…...

shell脚本之case 的用法

shell脚本之case case是Shell脚本中的一种控制流语句&#xff0c;它允许根据变量的值选择不同的执行路径。case语句的语法如下&#xff1a; case word in pattern [| pattern]...) command-list ;; pattern [| pattern]...) command-list ;; ... *) command-list ;; esa…...

第3章 helloworld 驱动实验(iTOP-RK3568开发板驱动开发指南 )

在学习C语言或者其他语言的时候&#xff0c;我们通常是打印一句“helloworld”来开启编程世界的大门。学习驱动程序编程亦可以如此&#xff0c;使用helloworld作为我们的第一个驱动程序。 接下来开始编写第一个驱动程序—helloworld。 3.1 驱动编写 本小节来编写一个最简单的…...

基于PyTorch使用LSTM实现新闻文本分类任务

本文参考 PyTorch深度学习项目实战100例 https://weibaohang.blog.csdn.net/article/details/127154284?spm1001.2014.3001.5501 文章目录 本文参考任务介绍做数据的导入 环境介绍导入必要的包介绍torchnet和keras做数据的导入给必要的参数命名加载文本数据数据前处理模型训…...

Flutter插件的制作和发布

Flutter制作插件有两种方式&#xff08;以下以android和ios为例&#xff09;&#xff1a; 目录 1.直接在主工程下的android和ios项目内写插件代码&#xff1a;2.创建独立Flutter Plugin项目&#xff0c;制作各端插件后&#xff0c;再引入项目&#xff1a;1. 创建Flutter Plugin…...

【JAVA】异常

作者主页&#xff1a;paper jie 的博客 本文作者&#xff1a;大家好&#xff0c;我是paper jie&#xff0c;感谢你阅读本文&#xff0c;欢迎一建三连哦。 本文录入于《JAVASE语法系列》专栏&#xff0c;本专栏是针对于大学生&#xff0c;编程小白精心打造的。笔者用重金(时间和…...

合同矩阵充要条件

两个实对称矩阵合同的充要条件是它们的正负惯性指数相同。 正惯性指数是矩阵正特征值个数&#xff0c;负惯性指数是矩阵负特征值个数。 即合同矩阵的充分必要条件是特征值的正负号个数相同。 证明&#xff1a; 本论证中的所有矩阵都是对称矩阵。 根据定义&#xff0c;若矩…...

数据分析三剑客之Pandas

1.引入 前面一篇文章我们介绍了numpy&#xff0c;但numpy的特长并不是在于数据处理&#xff0c;而是在它能非常方便地实现科学计算&#xff0c;所以我们日常对数据进行处理时用的numpy情况并不是很多&#xff0c;我们需要处理的数据一般都是带有列标签和index索引的&#xff0…...

Spring Boot自动装配原理

简介 Spring Boot是一个开源的Java框架&#xff0c;旨在简化Spring应用程序的搭建和开发。它通过自动装配的机制&#xff0c;大大减少了繁琐的配置工作&#xff0c;提高了开发效率。本文将深入探讨Spring Boot的自动装配原理。 自动装配的概述 在传统的Spring框架中&#xf…...

VMware Workstation虚拟机网络配置及配置自动启动

目录 一、网络配置二、配置自动启动1.VMware 中配置虚拟机自启动2.系统服务中配置 VMware 服务自启动 一、网络配置 本文将虚拟机 IP 与主机 IP 设置为同一个网段。 点击 “编辑” -> “虚拟网络编辑器(N)…”&#xff1a; 点击 “更改设置”&#xff1a; 将 VMnet0 设置…...

设计模式和设计原则回顾

设计模式和设计原则回顾 23种设计模式是设计原则的完美体现,设计原则设计原则是设计模式的理论基石, 设计模式 在经典的设计模式分类中(如《设计模式:可复用面向对象软件的基础》一书中),总共有23种设计模式,分为三大类: 一、创建型模式(5种) 1. 单例模式(Sing…...

利用ngx_stream_return_module构建简易 TCP/UDP 响应网关

一、模块概述 ngx_stream_return_module 提供了一个极简的指令&#xff1a; return <value>;在收到客户端连接后&#xff0c;立即将 <value> 写回并关闭连接。<value> 支持内嵌文本和内置变量&#xff08;如 $time_iso8601、$remote_addr 等&#xff09;&a…...

练习(含atoi的模拟实现,自定义类型等练习)

一、结构体大小的计算及位段 &#xff08;结构体大小计算及位段 详解请看&#xff1a;自定义类型&#xff1a;结构体进阶-CSDN博客&#xff09; 1.在32位系统环境&#xff0c;编译选项为4字节对齐&#xff0c;那么sizeof(A)和sizeof(B)是多少&#xff1f; #pragma pack(4)st…...

云启出海,智联未来|阿里云网络「企业出海」系列客户沙龙上海站圆满落地

借阿里云中企出海大会的东风&#xff0c;以**「云启出海&#xff0c;智联未来&#xff5c;打造安全可靠的出海云网络引擎」为主题的阿里云企业出海客户沙龙云网络&安全专场于5.28日下午在上海顺利举办&#xff0c;现场吸引了来自携程、小红书、米哈游、哔哩哔哩、波克城市、…...

【入坑系列】TiDB 强制索引在不同库下不生效问题

文章目录 背景SQL 优化情况线上SQL运行情况分析怀疑1:执行计划绑定问题?尝试:SHOW WARNINGS 查看警告探索 TiDB 的 USE_INDEX 写法Hint 不生效问题排查解决参考背景 项目中使用 TiDB 数据库,并对 SQL 进行优化了,添加了强制索引。 UAT 环境已经生效,但 PROD 环境强制索…...

《Playwright:微软的自动化测试工具详解》

Playwright 简介:声明内容来自网络&#xff0c;将内容拼接整理出来的文档 Playwright 是微软开发的自动化测试工具&#xff0c;支持 Chrome、Firefox、Safari 等主流浏览器&#xff0c;提供多语言 API&#xff08;Python、JavaScript、Java、.NET&#xff09;。它的特点包括&a…...

Leetcode 3577. Count the Number of Computer Unlocking Permutations

Leetcode 3577. Count the Number of Computer Unlocking Permutations 1. 解题思路2. 代码实现 题目链接&#xff1a;3577. Count the Number of Computer Unlocking Permutations 1. 解题思路 这一题其实就是一个脑筋急转弯&#xff0c;要想要能够将所有的电脑解锁&#x…...

Linux简单的操作

ls ls 查看当前目录 ll 查看详细内容 ls -a 查看所有的内容 ls --help 查看方法文档 pwd pwd 查看当前路径 cd cd 转路径 cd .. 转上一级路径 cd 名 转换路径 …...

OkHttp 中实现断点续传 demo

在 OkHttp 中实现断点续传主要通过以下步骤完成&#xff0c;核心是利用 HTTP 协议的 Range 请求头指定下载范围&#xff1a; 实现原理 Range 请求头&#xff1a;向服务器请求文件的特定字节范围&#xff08;如 Range: bytes1024-&#xff09; 本地文件记录&#xff1a;保存已…...

linux 错误码总结

1,错误码的概念与作用 在Linux系统中,错误码是系统调用或库函数在执行失败时返回的特定数值,用于指示具体的错误类型。这些错误码通过全局变量errno来存储和传递,errno由操作系统维护,保存最近一次发生的错误信息。值得注意的是,errno的值在每次系统调用或函数调用失败时…...