单细胞转录组 | 细胞亚群人工注释
前言
前几期我们确定了我们想要的cluster,接下来就需要进入标志物识别阶段,此步骤可以帮助我们验证某些类群的身份,推测未知类群的身份,即:细胞亚群注释。
细胞亚群注释有机器注释(注释结果不一定百分百可靠)和人工注释(主观性强)。
本期我们将介绍如何进行人工注释。
本文框架
1. 安装包
如果已经安装,此步请跳过。
install.packages('Seurat')
install.packages('dplyr')
install.packages('tidyverse')
install.packages('patchwork')
2. 加载包
library(Seurat)
library(dplyr)
library(tidyverse)
library(patchwork)
3. 设置工作路径
setwd("D:/sc-seq")
根据自己的数据存放位置自定义路径
4. 读取数据
该数据为harmony后的数据。
scRNA <- load("scdata2.Rdata")
数据获取请查看:单细胞转录组 | 多样本处理与Harmony整合
5. 细胞注释
5.1 识别每个类群的全部标记物
函数格式:FindAllMarkers(object, test.use="……", only.pos = True,logfc.threshold = "……")
object:harmony整合后的对象;
test.use:检验方法;
only.pos:仅返回表达倍数大于0的基因(默认为 FALSE);
logfc.threshold:类群中基因的平均表达量相对于所有其他类群的平均表达量的最小log2倍数。默认为0.25。
cluster_markers <- FindAllMarkers(object = scRNA_harmony,
test.use="wilcox" ,
only.pos = TRUE,
logfc.threshold = 0.25)
输出文件:
p_val:P值;
avg_log2FC:平均的差异倍数;
pct.1:以IBSP为例,即:有84.1%的0cluster的细胞表达IBSP这个基因;
pct.2:除了0cluster以外的其余cluster中表达IBSP的细胞为31.6%;
cluster:细胞cluster类群。
5.2 筛选每个cluster中表达前10的基因
# 筛选p_val<0.05的基因
all.markers =cluster_markers %>% dplyr::select(gene,everything()) %>% dplyr::filter(p_val<0.05)
# 将avg_log2FC排名前10的基因筛选出来
top10 = all.markers %>% group_by(cluster) %>% top_n(n = 10, wt = avg_log2FC)
输出文件:
5.3 手动查找maker基因进行注释
我们可以通过下面的数据库进行查找maker基因进行细胞注释。这里我们以CellMarker数据库为例进行演示。
CellMarker数据库:https://panglaodb.se/index.html
PanglaoDB数据库:https://panglaodb.se/index.html
步骤:
① 在官网红框处输出你要查找的maker基因;
② 查看结果
这里数据库匹配的是"Stem cell",实际情况下每个cluster需要多搜索几个基因再确定细胞类型,这在里因为我比较懒,所以仅以"IBSP"基因为例,展示网站使用方法。
5.4 更改cluster名
函数格式:RenameIdents(object,oldname = newname,……)
scRNA1 = RenameIdents(scRNA_harmony,"0" = "Stem cell","1" = "Osteoclast")
返回结果:
可以看到红框处"0"和"1"的cluster类群名已经被替换。
5.5 绘制图片
teneplot = DimPlot(scRNA1,reduction = "tsne", label =T)
查看图片:
0 cluster和1 cluster的类群名已经被更改。
相关文章
- pycharm单行和多行注释快捷键_java怎么取消注释
- pycharm多行代码同时注释、去除注释_vs如何统计代码行数
- vim 注释快捷键_vim编辑器快捷键
- vs 注释快捷键_VS2010快捷键
- 单细胞自动注释工具汇总
- IntelliJ IDEA设置类注释和方法注释带作者和日期「建议收藏」
- oracle建表语句例子_oracle建表语句例子带注释
- "--"注释在Oracle和MySQL下的区别
- bzero memset_perl注释
- 单细胞专题 | 8.单细胞类型注释之SingleR包详解
- 单细胞专题 | 9.如何人工注释单细胞类群?
- [Bioinformatics | 论文解读] 基于生成对抗网络的单细胞半监督注释和降维框架
- 初识C语言第一话之数据类型、常量变量、字符串、转义字符与注释
- Oracle 数据库注释符号使用指南(oracle注释符)
- Linux内核:完美源码解析(linux内核完全注释)
- linux注释简易指南(linux如何注释)
- 不可不知的 Oracle 表字段注释(oracle表字段注释)
- 探索Linux源代码:从注释中获取知识(linux源代码注释)
- Oracle中添加列注释的方法(oracle给列添加注释)
- Oracle表添加注释的方法(oracle表注释)
- MSSQL注入攻击技术分析与防范(mssql注入 注释)
- Oracle中使用注释标识有效管理程序代码(oracle中标示注释)
- Java经验点滴:类注释文档编写方法
- 利用SQL语句给字段加注释的方法