单细胞注释

单细胞-注释 -

2022-01-17 多个样本单细胞分析流程 - (jianshu.com)

一、人工注释

人工注释需要借助文献检索marker或者结合常用的注释数据库,例如两个常用的数据库:

CellMarker(http://bio-bigdata.hrbmu.edu.cn/CellMarker/);

panglaoDB(A Single Cell Sequencing Resource ForGene Expression Data,https://panglaodb.se/)。

手动注释的话,用小提琴图、热图展示

1、计算每一类细胞中的Marker基因

all.markers <- FindALLMarkers(esperiment.aggregate, only.pos = TRUE, min.pct = 0.25, logfc.threshold = 0.25)

head(markers)

dim(all.markers)

2、计算特定亚群之间的marker基因

cluster1.markers <- FindMarkers(experiment.aggregate, ident.1 = 1, min.pct = 0.25)

head(x = cluster1.markers, n = 5)

FeaturePlot(experiment.aggregate, features = rownames(cluster1.markers)[1:6])

3、细筛

序号3在自己的亚群中至少50%的细胞表达,也可以PCT2<0.5;4.5按情况选择要不要做

4、计算特定两组细胞之间的差异基因,决定要不要把两个亚群合并

计算特定两组细胞之间的差异基因

sub.markers <- FindMarkers(experiment.aggregate, ident.1 = "0", ident.2 = "3")

View(sub.markers)

发现0和3差异大的都是线粒体基因,说明本身差异不大,那就可以合并

再看看0,3和1的差异

sub.markers <- FindMarkers(experiment.aggregate, ident.1 =( "0","3"), ident.2 = "1")

View(sub.markers)


如果这些差异是有意义的,那么1可以不合并

new.cluster.ids <- c("Memory CD4+", "Naive CD4+ T", "...")

names(new,cluster,ids) <- levels(pbmc)

pbmc <- RenameIdents(pbmc, new,cluster,ids)  #修改Idents

pbmc$celltype <- Idents(pbmc)  #在metadata中,添加Celltype信息

二、SingleR

使用内置参考进行注释(最简便的)

使用SingleR的最简单方法是使用内置参考对细胞进行注释。通过专用的检索功能提供了7个参考数据集(主要来自大量RNA-seq或微阵列数据)。

singleR自带的7个参考数据集,需要联网才能下载,其中5个是人类数据,2个是小鼠的数据:

BlueprintEncodeData Blueprint (Martens and Stunnenberg 2013) and Encode (The ENCODE Project Consortium 2012) (人)

DatabaseImmuneCellExpressionData The Database for Immune Cell Expression(/eQTLs/Epigenomics)(Schmiedel et al. 2018)(人)

HumanPrimaryCellAtlasData the Human Primary Cell Atlas (Mabbott et al. 2013)(人)

MonacoImmuneData, Monaco Immune Cell Data - GSE107011 (Monaco et al. 2019)(人)

NovershternHematopoieticData Novershtern Hematopoietic Cell Data - GSE24759(人)

ImmGenData the murine ImmGen (Heng et al. 2008) (鼠)

MouseRNAseqData a collection of mouse data sets downloaded from GEO (Benayoun et al. 2019).鼠)

SingleR包的工具包括:

SingleR()函数,用于注释

plotScoreHeatmap()使用热图比较label score

pruneScores() 对低质量的注释进行“修剪”(即注释为NA)

plotScoreDistribution()观察修剪是否合适,默认为偏离中值3个MAD(评价数据离散程度的统计学指标)


操作步骤:

1、SingleR的安装

# 使用devtools包进行安装

devtools::install_github('dviraran/SingleR') # this might take long, though mostly because of the installation of Seurat.

# 安装celldex 

if(!require("BiocManager",quietly=TRUE)) install.packages("BiocManager") BiocManager::install("celldex")

或者

if(!require("BiocManager",quietly=TRUE)) install.packages("BiocManager") 

BiocManager::install("SingleR")

install.packages("remotes")

remotes :: install_github("LTLA/celldex")

SingleR这个包本身并不会自带数据库,而是专门的把数据库文件丢给了celldex包。所以还需要安装celldex包

2、加载R包和所需的数据集

library(SingleR)

library(celldex)

mouseRNA <- MouseRNAseqData() #小鼠数据集为例

3、读取上一节保存的RDS文件,并将seurat对象转换为SingleR分析所需的SingleCellExpriment对象。

sce_for_SingleR <- GetAssayData(seurat_tutorial, slot="data")

[email protected]$seurat_clusters

4、注释细胞

pred.mouseRNA <- SingleR(test=sce_for_SingleR, ref = mouseRNA, labels = mouseRNA$label.main, method = "clusters", clusters = clusters, assay.type.test = "logcounts", assay.type.ref ="logcounts")

注释时labels一般选择main labels, 大的细胞类型相对准确度要高一些。

5、提取并保存注释信息

cellType = data.frame(ClusterID=levels([email protected]$seurat_clusters), celltype = pred.mouseRNA$labels)

6、将细胞注释信息添加到seurat对象中

[email protected]$singleR = cellType[match(clusters, cellType$ClusterID), 'celltype']

三、基于已发表的文献

除了参考细胞注释数据库外,也可以从已发表的单细胞文章中查找marker基因,一般通过PubMed或者GeenMedical等数据库网站来进行文献的查找和检索。

1)首先明确样本的物种和组织类型信息,比如研究的是人肝内胆管癌,可在PubMed搜索框中输入“Single-cell transcriptomic intrahepatic cholangiocarcinoma”关键词进行搜索,左边也可以通过拖动时间条来选择文章的发表时间,选择排名比较靠前的文章,比如这里选择第一篇文章《Single-cell transcriptomic architecture and intercellular crosstalk of human intrahepatic cholangiocarcinoma》进行下载查看。

2)单细胞文献中首先会针对研究样本绘制单细胞图谱,通过文献中的单细胞图谱可以看到该研究检测到的细胞类型,以及定义这些细胞类型所用的maker基因,通常会利用热图、小提琴图、气泡图、t-SNE/UMAP聚类分布图等对marker基因进行可视化展示。例如在这篇文章中通过已知的marker基因及CNV分析共注释到了10种细胞类型,分别为:B cells、Cholangiocytes、Dendritic cells、Endothelial cells、Fibroblasts、Hepatocytes、Macrophages、Malignant cells、NK cells、T cells,同时也对各细胞类型的marker基因进行了可视化展示,如果您研究的物种和组织类型信息和该文献一致,就可以参考该文献中的marker基因来进行细胞注释。

#### 除可视化图片注释外,还可以基于表格注释

细胞注释需要对细胞聚类结果中的每个cluster依次进行,以百迈客结题报告结果文件夹中的cluster0为例,进行该cluster的细胞类型注释:

1)首先依照路径biomarker_Web_Report\BMK_3_seurat_analysis\BMK_3_Integrated\BMK_4_MarkerGene\BMK_1_Statistics,找到All.cluster0.diff_featuregene这个表格;

2)然后基于数据库/文献查找到的已知marker基因列表,在All.cluster0.diff_featuregene表中对已有marker基因进行检索,将能够检索到的marker基因在cluster0中的log2FC值、pct.1值、pct.2值进行记录(log2FC代表对应基因在cluster0中的差异表达水平,pct.1值代表cluster0中表达该基因的细胞比例,pct.2值代表除cluster0外其他cluster表达该基因的细胞比例);3)将所有marker基因全部比对结束后,对比各个细胞类型的marker基因的log2FC值,pct.1和pct.2,该细胞类型表达的marker基因越多、log2FC值越大、pct.1值越大、pct.2值越小,证明cluster0注释为该细胞类型的可能性越大;如下图所示,基于列表中高表达的基因和T细胞的marker基因基本吻合,故将cluster0注释成T细胞;

你可能感兴趣的:(单细胞注释)