研究方法详细描述
本研究提出了一种基于 Python 的单细胞虚拟基因敲除分析方法,结合了虚拟基因敲除(Virtual Knockout, VKO)技术、差异表达分析、网络分析和 UMAP 降维,可有效评估目标基因敲除对细胞基因调控网络的影响。该方法主要包括数据预处理、虚拟敲除分析、差异基因分析以及多种高级可视化(如柱状图、火山图、饼图、UMAP 图、热图和基因网络图)的生成。
1. 数据预处理
数据预处理是本研究分析的第一步,主要包括以下内容:
- 质量控制(QC):使用
scanpy的calculate_qc_metrics函数计算基因和细胞的质量指标(如基因数、UMI 数、线粒体基因的比例等),并根据这些质量指标过滤掉低质量的细胞和基因。 - 归一化:使用
scanpy中的normalize_total和log1p函数对数据进行归一化处理,并将数据转换为对数表达量。 - 识别高变基因:使用
scanpy的highly_variable_genes函数识别数据集中表达变异最大的前 10000 个基因。这些高变基因是后续虚拟基因敲除分析的主要目标。
2. 虚拟基因敲除(VKO)分析
虚拟基因敲除分析通过模拟删除目标基因的表达来评估目标基因对细胞基因调控网络的影响。具体步骤如下:
- 目标基因选择:选择目标基因并检查该基因是否存在于数据中。如果目标基因不在数据中,程序会抛出错误提示。
- 计算基因调控变化:通过构建 k 近邻图(kNN 图)来模拟细胞之间的基因表达网络。目标基因的表达在虚拟敲除(KO)条件下被置为 0,并计算在 WT(野生型)和 KO 条件下,其他基因与目标基因之间的相关性变化。
- 网络影响计算:对于每个基因,计算敲除目标基因对该基因网络的影响。通过计算网络邻居在敲除前后的平均表达变化,得出每个基因的折叠变化(Fold Change, FC)、Z-score、p-value 和 FDR 调整后的 p-value。
- 差异分析结果:根据 p-value 和 FDR 调整后的 p-value 筛选出显著差异表达的基因,生成差异表达分析的结果数据框。
3. UMAP 降维与可视化
为了直观展示虚拟敲除后的基因调控变化,使用 UMAP(Uniform Manifold Approximation and Projection)对数据进行降维和可视化。具体步骤如下:
- PCA 降维:首先使用 PCA 进行初步降维,提取出主要的主成分。
- 计算邻居图:使用
scanpy的neighbors函数计算细胞之间的邻接图。 - UMAP 降维:在计算好邻接图后,使用
scanpy的umap函数进行 UMAP 降维。UMAP 能够保留数据的局部和全局结构,帮助我们更加直观地观察敲除前后的细胞分布变化。
4. 高级可视化
为了有效展示虚拟基因敲除分析的结果,生成了多种可视化图表,具体包括:
- 柱状图(Bar Plot):显示虚拟基因敲除后,差异表达基因的变化,按照 Fold Change 排序,展示前 20 个受调控的基因。
- 火山图(Volcano Plot):展示基因的 Z-score 与调整后的 p-value,帮助识别在虚拟敲除后的显著变化基因。
- 饼图(Pie Chart):显示显著和非显著差异基因的比例,帮助了解基因表达变化的总体分布。
- UMAP 图(UMAP):通过 UMAP 降维显示虚拟敲除前后细胞分布的变化。
- 热图(Heatmap):展示前 50 个差异表达基因的表达情况。
- 基因网络图(Gene Network):通过计算基因间的相关性,构建基因调控网络,并展示与目标基因相关的网络。

