R的seurat和python的scanpy对比学习

现在的单细胞分析,往往避免不了scanpy的使用,我们可以通过对比seurat来学习scanpy

今天的格式怎么都改不了。。。手机阅读有点费劲,,推荐电脑阅读。

单细胞数据分析概览

单细胞分析,总流程


python教程

seurat教程

seurat中与scanpy对等的函数操作

|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| #### 数据预处理 ##### Seurat (R) CreateSeuratObject(): 创建Seurat对象。 NormalizeData(): 数据标准化。 FindVariableFeatures(): 识别高变异基因。 ScaleData(): 数据缩放和中心化。 ##### Scanpy (Python) sc.read() / sc.read_10x_mtx(): 读取数据创建AnnData对象。 sc.pp.normalize_total(): 数据标准化。 sc.pp.highly_variable_genes(): 识别高变异基因。 sc.pp.scale(): 数据缩放和中心化。 *** ** * ** *** #### 降维分析 ##### Seurat (R) RunPCA(): 主成分分析(PCA)。 RunUMAP(): UMAP降维。 RunTSNE(): t-SNE降维。 ##### Scanpy (Python) sc.tl.pca(): 主成分分析(PCA)。 sc.tl.umap(): UMAP降维。 sc.tl.tsne(): t-SNE降维。 *** ** * ** *** #### 聚类分析 ##### Seurat (R) FindNeighbors(): 计算邻居图。 FindClusters(): 基于图的聚类。 ##### Scanpy (Python) sc.pp.neighbors(): 计算邻居图。 sc.tl.louvain() / sc.tl.leiden(): 基于图的聚类。 *** ** * ** *** #### 差异表达分析 ##### Seurat (R) FindMarkers(): 寻找差异表达基因。 ##### Scanpy (Python) sc.tl.rank_genes_groups(): 寻找差异表达基因。 *** ** * ** *** #### 数据可视化 ##### Seurat (R) DimPlot(): 降维数据可视化。 FeaturePlot(): 基因表达水平可视化。 VlnPlot(): 小提琴图展示基因表达分布。 ##### Scanpy (Python) sc.pl.umap() / sc.pl.tsne(): 降维数据可视化。 sc.pl.dotplot() / sc.pl.violin(): 基因表达水平可视化。 |

为何seurat中没有与scanpy中的sc.pp.log1p(adata)对应步骤

有几个方面考虑:

|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| #### 1. 数据标准化方法的差异 Seurat和Scanpy在数据预处理和标准化方面采取了不同的方法。Seurat的NormalizeData函数默认使用的是LogNormalize方法,这个方法首先对每个细胞的基因表达量进行归一化处理,使得每个细胞的总表达量相同(默认是1e4),然后对归一化后的表达量加1后取对数(使用自然对数)。这个过程实质上包含了与Scanpy中sc.pp.normalize_total后跟sc.pp.log1p相似的步骤,只是Seurat将其整合在了一个步骤中进行。 #### 2. 集成的处理流程 Seurat的设计哲学是提供一个相对简化和集成的分析流程,使得用户可以通过少量的函数调用完成从数据预处理到高级分析的整个过程。因此,Seurat在其标准化函数中内置了对数变换,而无需用户手动进行这一步。这种设计选择简化了分析流程,减少了需要记住的函数数量,但也意味着用户在使用过程中可能对于数据处理的每一步不如Scanpy那样清晰明了。 #### 3. 灵活性与透明度 Scanpy采取的是更模块化的策略,每个处理步骤都由不同的函数完成。这种方法提供了更大的灵活性和透明度,使得用户能够更清楚地看到数据是如何被逐步处理和分析的。这对于需要定制处理流程的研究人员来说是一个优点。 |

看完记得顺手点个 "在看" 哦!

相关推荐
递归不收敛1 小时前
吴恩达机器学习课程(PyTorch适配)学习笔记:2.4 激活函数与多类别处理
pytorch·学习·机器学习
加油20191 小时前
如何快速学习一个网络协议?
网络·网络协议·学习·方法论
F_D_Z1 小时前
数据集相关类代码回顾理解 | StratifiedShuffleSplit\transforms.ToTensor\Counter
python·torchvision·transforms
A9better1 小时前
嵌入式开发学习日志36——stm32之USART串口通信前述
stm32·单片机·嵌入式硬件·学习
不太可爱的叶某人2 小时前
【学习笔记】kafka权威指南——第6章 可靠的数据传递
笔记·学习·kafka
tao3556672 小时前
【Python刷力扣hot100】283. Move Zeroes
开发语言·python·leetcode
小宁爱Python3 小时前
从零搭建 RAG 智能问答系统1:基于 LlamaIndex 与 Chainlit实现最简单的聊天助手
人工智能·后端·python
湖南人爱科技有限公司3 小时前
RaPhp和Python某音最新bd-ticket-guard-client-data加密算法解析(视频评论)
android·python·php·音视频·爬山算法·raphp
2301_790994994 小时前
仿神秘海域/美末环境交互的程序化动画学习
学习·microsoft·交互
eqwaak04 小时前
数据预处理与可视化流水线:Pandas Profiling + Altair 实战指南
开发语言·python·信息可视化·数据挖掘·数据分析·pandas