前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >单细胞基本分析流程概述

单细胞基本分析流程概述

作者头像
生信技能树
发布2024-01-11 15:25:32
5970
发布2024-01-11 15:25:32
举报
文章被收录于专栏:生信技能树生信技能树

上次直播Seurat对象内部结构解析,给大家分享一下step1—— 单细胞数据不同格式,数据读取方法创建Seurat对象,以及seurat对象内容结构简介

普通单细胞转录组的降维聚类分群,主要是集中于常规分析流程:

  • step1: 创建对象
  • step2: 质量控制
  • step3: 表达量的标准化和归一化
  • step4: 去除干扰因素(多个样本整合)
  • step5: 判断重要的基因
  • step6: 多种降维算法
  • step7: 可视化降维结果
  • step8: 多种聚类算法
  • step9: 聚类后找每个细胞亚群的标志基因
  • step10: 继续分类

今天想给大家分享一下单细胞分析流程概述以及V5版seurat读取不同格式单细胞数据

单细胞分析流程概述

创建seurat对象数据质控
代码语言:javascript
复制
#创建seurat对象
pbmc <- CreateSeuratObject(counts = pbmc.data, 
                           project = "pbmc3k", 
                           min.cells = 3, min.features = 200)

#数据质控
pbmc[["percent.mt"]] <- PercentageFeatureSet(pbmc, pattern = "^MT-")

# Visualize QC metrics as a violin plot
VlnPlot(pbmc, features = c("nFeature_RNA", "nCount_RNA", "percent.mt"), ncol = 3)
pbmc[[c("nFeature_RNA", "nCount_RNA", "percent.mt")]]

pbmc <- subset(pbmc, subset = nFeature_RNA > 200 & nFeature_RNA < 2500 & percent.mt < 5)

检测基因数:低质量的细胞或空液滴通常只有很少的基因;细胞双胞体或多胞体可能表现出异常高的基因数

检测UMI数 :细胞双胞体或多胞体可能表现出异常高的基因count数

线粒体基因占比:低质量/垂死的细胞常常表现出大量的线粒体污染;代谢旺盛的细胞中线粒体数目多,如心肌(50%),小肠,肝脏(20%)

数据标准化
代码语言:javascript
复制
pbmc <- NormalizeData(object = pbmc,normalization.method =  "LogNormalize")

排除技术误差,让测序深度和文库大小不同的细胞的基因表达量具有可比性,进而更好地呈现基因水平的差异。

鉴定高可变基因和归一化
代码语言:javascript
复制
#Identification of highly variable features 
pbmc <- FindVariableFeatures(pbmc, selection.method = "vst", nfeatures = 2000)

#Scaling the data
all.genes <- rownames(pbmc)
pbmc <- ScaleData(pbmc, features = all.genes)

高变基因筛选:筛选在某些细胞中高度表达,而在其他细胞中低表达的基因

scale归一化:将每个基因在所有细胞中的均值变为0,方差标为1

PCA线性降维
代码语言:javascript
复制
pbmc <- RunPCA(pbmc, features = VariableFeatures(object = pbmc))

#确定PCA数据
ElbowPlot(pbmc)
细胞聚类和可视化
代码语言:javascript
复制
#Cluster the cells
pbmc <- FindNeighbors(pbmc, dims = 1:10)
pbmc <- FindClusters(pbmc, resolution = 0.5)

#Run non-linear dimensional reduction (UMAP/tSNE)
pbmc <- RunUMAP(pbmc, dims = 1:10)

首先基于PCA空间中的欧几里得度量构建一个KNN图,然后基于局部邻域中的共享重叠(Jaccard 相似性)来精确任意两个细胞之间的边缘权重。

使用Louvain 算法进行细胞群聚类优化,再使用UMAP或者t-SNE进行可视化

寻找Marker基因对亚群命名
代码语言:javascript
复制
# find all markers of cluster 2
cluster2.markers <- FindMarkers(pbmc, ident.1 = 2)
head(cluster2.markers, n = 5)

# find all markers distinguishing cluster 5 from clusters 0 and 3
cluster5.markers <- FindMarkers(pbmc, ident.1 = 5, ident.2 = c(0, 3))
head(cluster5.markers, n = 5)

# find markers for every cluster compared to all remaining cells, report only the positive
pbmc.markers <- FindAllMarkers(pbmc, only.pos = TRUE)

#Assigning cell type identity to clusters
new.cluster.ids <- c("Naive CD4 T", "CD14+ Mono", "Memory CD4 T", "B", "CD8 T", "FCGR3A+ Mono",
                     "NK", "DC", "Platelet")
names(new.cluster.ids) <- levels(pbmc)
pbmc <- RenameIdents(pbmc, new.cluster.ids)
DimPlot(pbmc, reduction = "umap", label = TRUE, pt.size = 0.5) + NoLegend()

V5版seurat读取不同格式单细胞数据

10x Genomics格式:

barcodes.tsv 、features/genes.tsv和matrix.mtx文件 是10X Genomics单细胞转录组测序数据的标准文件格式。这些文件通常存储在一个目录中,可以使用Read10X函数从R语言中读取。

h5格式:

用于存储大规模数据的二进制文件格式,它可以包含多种数据类型,如矩阵、表格、图像等。

压缩文本矩阵(TXT或CSV的GZ文件):

压缩文本矩阵可以用于存储单细胞测序数据的表达矩阵或元数据,它可以减少文件的大小和传输时间 。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2024-01-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 生信技能树 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 单细胞分析流程概述
    • 创建seurat对象数据质控
      • 数据标准化
        • 鉴定高可变基因和归一化
          • PCA线性降维
            • 细胞聚类和可视化
              • 寻找Marker基因对亚群命名
              • V5版seurat读取不同格式单细胞数据
              相关产品与服务
              对象存储
              对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档