news 2026/4/16 15:28:00

NC文章复现 | 单细胞和空间转录组学揭示前列腺癌中棒状细胞的免疫抑制效应(一):单细胞数据预处理

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
NC文章复现 | 单细胞和空间转录组学揭示前列腺癌中棒状细胞的免疫抑制效应(一):单细胞数据预处理

搜索文献,发现一篇非常好的单细胞和空间转录组学联合分析的好文章,带有全套复现代码。从今天开始,我们就来系统学习一下。文章的题目是:Single cell and spatial transcriptomics highlight the interaction of club-like cells with immunosuppressive myeloid cells in prostate cancer。代码托管在 Github:https://github.com/akiviaho/ST-prostate

文章的主要内容前面已经作了简要介绍:

全套复现代码 | 单细胞和空间转录组学,揭示前列腺癌耐药性的新驱动因素

本研究揭示了棒状细胞导致的前列腺癌耐药恶性循环,如下图所示:

如果你对这篇文章的复现感兴趣,可以加我微信:usegalaxy,拉你入群一块交流。

我们先来看一下文章用到的主要数据。

文章数据

该研究涉及空间转录组(ST)、单细胞转录组(scRNA-seq)参考集及外部验证数据。

  1. 1. 空间转录组数据 (ST):
    ◦ 发现队列:包含 80 个新鲜冷冻组织切片(来自 56 名患者),涵盖良性(BPH)、初治(TRNA)、新辅助治疗(NEADT)和去势抵抗(CRPC)阶段。数据已上传至 GEO,登录号为 GSE278936。
    ◦ 验证队列:来自 8 名初治患者的 32 个切片。数据存储在 EGA,登录号为 EGAD50000000603。
    ◦ 转移癌数据:包含 4 个转移灶样本(盆腔淋巴结、肝、心包、硬脑膜)。

  2. 2. 单细胞参考图谱 (scRNA-seq Reference):
    ◦ 研究整合了多项已发表的数据集(共 98 个样本、64 名患者、223,881 个细胞)来定义 26 种细胞状态。
    ◦ GEO 登录号:GSE137829, GSE141445, GSE176031, GSE185344, GSE181294;以及 SRA: PRJNA699369 和 Broad Institute 研究 SCP1244。

  3. 3. 外部 Bulk 验证数据:
    ◦ TCGA-PRAD 和 SU2C-PCF (mCRPC) 队列

数据预处理

import numpy as np import pandas as pd import scanpy as sc import anndata as ad from pathlib import Path import glob import warnings warnings.filterwarnings('ignore') import os os.chdir('/pub/sci-paper/2024_spatial_prostate')

Formatting Dong et al. 2020 data

我们先下载 dong_2020 参考数据,GEO 编号:GSE137829。需要注意的是,这个数据的 Series Matrix File(s) 文件中只有注释信息,而表达数据存在于补充文件 GSE137829_RAW.tar。解压后,得到 6 个.txt 文件:

galaxy@galaxy:/pub/sci-paper/2024_spatial_prostate/sc-reference/dong_2020$ ll -lsh *.txt 179M -rw-rw-r-- 1 galaxy galaxy 179M Sep 23 2019 GSM4089151_P1_gene_cell_exprs_table.txt 63M -rw-rw-r-- 1 galaxy galaxy 63M Sep 23 2019 GSM4089152_P2_gene_cell_exprs_table.txt 68M -rw-rw-r-- 1 galaxy galaxy 68M Sep 23 2019 GSM4089153_P3_gene_cell_exprs_table.txt 72M -rw-rw-r-- 1 galaxy galaxy 72M Sep 23 2019 GSM4089154_P4_gene_cell_exprs_table.txt 469M -rw-rw-r-- 1 galaxy galaxy 469M Aug 5 2020 GSM4711414_P5_gene_cell_exprs_table.txt 436M -rw-rw-r-- 1 galaxy galaxy 436M Aug 5 2020 GSM4711415_P6_gene_cell_exprs_table.txt

接着从文章的附件中下载注释文件:

wget https://static-content.springer.com/esm/art%3A10.1038%2Fs42003-020-01476-1/MediaObjects/42003_2020_1476_MOESM4_ESM.xlsx

稍加整理后开始合并样本数据(代码有适当调整):

import numpy as np import pandas as pd import scanpy as sc import anndata as ad from pathlib import Path import glob import warnings warnings.filterwarnings('ignore') import os os.chdir('/pub/sci-paper/2024_spatial_prostate') # Formatting Dong et al. 2020 data sc_files = glob.glob('sc-reference/dong_2020/*txt') dong_annot = pd.read_csv('sc-reference/dong_2020/dong_2020_annot.csv',sep=',',index_col=0) dong_annot = dong_annot.rename(columns={'CellType':'celltype_orig'}) # Download the files into a list and concatenate together adata_list = [] for file in sc_files: s_abbr = '_'.join(file.split('/')[2].split('_')[0:2]) df = pd.read_csv(file, sep='\t', index_col=1) df = df.iloc[:, 1:] adata = ad.AnnData(df.T) #### ADDING METADATA #### adata.obs_names = s_abbr + '_' + adata.obs_names meta = adata.obs.copy() meta['sample'] = s_abbr meta['patient'] = s_abbr meta = meta.merge(dong_annot,how='left',left_index=True,right_index=True) meta['phenotype'] = 'CRPC' meta['dataset'] = 'dong_2020' adata.obs = meta.copy() ########## adata.obs_names_make_unique() # Since the genes were originally named with ENSEMBL ID, we have to make them unique. adata.var_names_make_unique() adata_list.append(adata) adata_concat = ad.concat(adata_list, join='outer', fill_value=0) adata_concat.obs adata_concat.write('sc-reference/dong_2020/adata_obj.h5ad')

好了,我们今天先整理到这里,明天见~

推荐阅读

中国银河生信云平台(UseGalaxy.cn)致力于零代码生信分析。平台拥有海量计算资源、3000 多个生信工具和数十条生信流程,并且为用户提供 200G 免费存储空间。进群交流请先加 usegalaxy 为好友。我们还为进阶用户提供高质量培训课程:

RNA-seq数据分析实战 | 2026年第1期,开启你的生信学习之旅

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/15 15:01:17

47 Docker镜像编排

文章目录前言理论部分8_镜像的创建8.1_Docker 镜像结构8.2_Dockerfile 指令详解8.3_镜像三种创建方式9_Compose编排9.1_Compose 核心概念9.2_YAML 语法规范10_Harbor私有仓库10.1_Harbor 核心组件10.2_Harbor 安全机制实验部分8_镜像的创建8.1_构建 Apache 镜像9_Compose编排9.…

作者头像 李华
网站建设 2026/4/16 12:44:39

清华大学开源的Open-AutoGLM究竟藏着哪些黑科技?(独家深度拆解)

第一章:清华大学开源的Open-AutoGLM究竟藏着哪些黑科技?(独家深度拆解)Open-AutoGLM 是清华大学自然语言处理实验室推出的一款面向自动化图学习与生成语言建模融合的开源框架,其核心在于打通图神经网络(GNN…

作者头像 李华
网站建设 2026/4/16 11:04:08

Dify平台入职培训内容生成系统设计

Dify平台入职培训内容生成系统设计 在企业数字化转型的浪潮中,人力资源管理正面临前所未有的效率挑战。尤其是新员工入职培训这一环节,传统模式下高度依赖HR人工整理资料、重复回答相同问题、难以个性化适配岗位需求——不仅耗时费力,还容易因…

作者头像 李华
网站建设 2026/4/16 14:27:27

Dify平台感恩日记提示生成功能用户反馈

Dify平台感恩日记提示生成功能用户反馈 在心理健康类产品日益注重“微干预”设计的今天,如何让用户每天愿意打开应用、写下几行文字,成了一道看似简单却极难破解的产品难题。许多用户知道写感恩日记有益情绪调节,但真正能坚持下来的寥寥无几—…

作者头像 李华
网站建设 2026/4/16 13:00:04

10、.NET Windows Forms 控件全解析

.NET Windows Forms 控件全解析 1. 控件基础 在 .NET 中, Form 类代表窗口,是所有其他窗口的基类,而 Control 类则是“具有可视化表示的组件”的基类,屏幕上所有可交互的元素都基于它构建。可以通过继承现有的控件类来创建自定义控件,通常不直接继承 Control 类,…

作者头像 李华
网站建设 2026/4/15 22:07:04

2、.NET编程模型深度解析

.NET编程模型深度解析 1. .NET编程基础概述 在深入了解 .NET 编程之前,我们需要先了解其编程模型,特别是中间语言(IL)。与其他字节码系统不同,IL 是面向对象的(OO)。大多数其他中间代码形式,如 Java 字节码,非常简单,且字节码指令通常直接映射到处理器或虚拟机指令…

作者头像 李华