寻找差异基因到底使用哪个?FindMarkers、FindallMarkers 、 findconservedmarkers 、还是 PrepSCTFindMarkers

Q: 得到的差异基因和保守基因,用哪个作为 marker 基因好? / FindallMarkers 和findconservedmarkers 结果上有什么区别吗?

A: 如果只有一个样本,就用 cluster 中的差异表达基因做 marker 基因。如果做了数据整合,比如处理组和对照组,就要先用 FindConservedMarkers 函数找到保守的差异表达基因,用它们来作为 marker 基因对 cluster 做注释,注释完以后,再用 FindMarkers 函数比较这个 cluster 中的处理组细胞和对照组细胞之间的差异表达基因。

需要解答:那要是不止两组,有好几组,用哪个函数呢?解决方案___

转自:如何使用 Seurat 分析单细胞测序数据( Q&A - 简书 (jianshu.com)

FindConservedMarkers实例
Seurat之整合分析(1) - 简书 (jianshu.com)
2020-05-18 seurat 包 Stimulated vs Control PBMCs - 简书 (jianshu.com)
单细胞测序数据整合分析示例 - 简书 (jianshu.com)
10x Genomics PBMC(七):整合数据后的聚类分析 - 简书 (jianshu.com)

2023.05.11

昨天找到了一篇帖子:【细胞通讯】PlantPhoneDB(2),是植物的样本,实验组和对照组。用SCT标准化,FindIntegrationAnchors做了去批次。作者在做完FindClusters之后,关键的两步是DefaultAssay(objs) <- 'SCT'objs<- PrepSCTFindMarkers(objs,assay = "SCT", verbose = TRUE) 贴一下作者的代码: 先按照这个跑一下看看

library(Seurat)

library(tidyverse)

library(ggplot2)

library(ggsci)

library(ggpubr)

library(pheatmap)

library(RColorBrewer)

library(patchwork)

library(lsa)

library(viridis)

library(hrbrthemes)

library(circlize)

library(chorddiag)

library(ggplotify)

library(data.table)

library(parmigene)

library(readxl)

library(infotheo)

library(igraph)

library(muxViz)

library(rgl)

library(tidyverse)

library(dplyr)

//参数选择和作者paper中用的参数一样

pbmc <- readRDS("pbmc3k_final.rds")

pbmc@meta.data$labels <- Idents(pbmc)

control.data <- Read10X(data.dir = "control/filtered_feature_bc_matrix/")

control<- CreateSeuratObject(counts = control.data, project = "control", min.cells = 3, min.features = 200)

control <- subset(control, subset = nFeature_RNA > 200 & nCount_RNA > 1000)

control <- SCTransform(control, verbose = FALSE)

heat.data <- Read10X(data.dir = "heat/filtered_feature_bc_matrix/")

heat<- CreateSeuratObject(counts = heat.data, project = "heat", min.cells = 3, min.features = 200)

heat <- subset(heat, subset = nFeature_RNA > 200 & nCount_RNA > 1000)

heat <- SCTransform(heat, verbose = FALSE)

datasets <- c(control,heat)

features <- SelectIntegrationFeatures(object.list = datasets, nfeatures = 8000)

datasets <- PrepSCTIntegration(object.list = datasets, anchor.features = features, verbose = TRUE)

datasets <- lapply(X = datasets, FUN = RunPCA, verbose = FALSE, features = features)

anchors <- FindIntegrationAnchors(object.list = datasets, normalization.method = "SCT",anchor.features = features, verbose = TRUE, reference=1,reduction = "cca")

objs <- IntegrateData(anchorset = anchors, normalization.method = "SCT", verbose = TRUE)

objs <- RunPCA(objs, verbose = FALSE, approx = FALSE, npcs = 50)

objs <- RunUMAP(objs, reduction = "pca", dims = 1:50, umap.method = "umap-learn", metric = "correlation")

objs <- RunTSNE(objs, reduction = "pca",dims = 1:50,tsne.method = "Rtsne")

objs <- FindNeighbors(objs, reduction = "pca",dims = 1:50)

objs <- FindClusters(objs, resolution = 0.5, algorithm = 2)

DefaultAssay(objs) <- 'SCT'

objs<- PrepSCTFindMarkers(objs,assay = "SCT", verbose = TRUE)

DEG <- FindAllMarkers(objs,

                      logfc.threshold=0.25,

                      min.diff.pct = 0.25,

                      max.cells.per.ident = 10000,

                      only.pos=T)

mark_gene <- DEG %>% mutate(avg_logFC=avg_log2FC) %>% filter(p_val_adj<0.05)

signature <- readxl::read_excel('../ath_doi_202104.xlsx')

sig_gene  <- signature %>% as.data.frame() %>% filter(Tissue=="Root") %>% mutate(V1=`Cell Type`,V2=Cell_Marker) %>% unique(.) %>% select(V1,V2)

贴一下报错,搜了一下ggrepel: 7 unlabeled data points (too many overlaps). Consider increasing max.overlaps ,说不要紧

 DefaultAssay(integrated) <- 'SCT'
> 
> integrated<- PrepSCTFindMarkers(integrated,assay = "SCT", verbose = TRUE)
Found 6 SCT models. Recorrecting SCT counts using minimum median counts: 2575
> 
> DEG <- FindAllMarkers(integrated,
+                       
+                       logfc.threshold=0.25,
+                       
+                       min.diff.pct = 0.25,
+                       
+                       only.pos=T)
Calculating cluster 0
  |++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=02m 41s
Calculating cluster 1
  |++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=33s  
Calculating cluster 2
  |++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=13s  
Calculating cluster 3
  |++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=39s  
Calculating cluster 4
  |++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=20s  
Calculating cluster 5
  |++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=04s  
Calculating cluster 6
  |++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=50s  
Calculating cluster 7
  |++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=21s  
Calculating cluster 8
  |++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=02m 24s
Calculating cluster 9
  |++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=52s  
Calculating cluster 10
  |++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=29s  
Calculating cluster 11
  |++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=30s  
Calculating cluster 12
  |++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=04m 21s
Calculating cluster 13
  |++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=19s  
Calculating cluster 14
  |++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=16s  
Calculating cluster 15
  |++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=02m 02s
Calculating cluster 16
  |++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=01m 47s
Calculating cluster 17
  |++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=03m 22s
Calculating cluster 18
  |++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=48s  
Calculating cluster 19
  |++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=28s  
Calculating cluster 20
  |++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=01m 53s
Calculating cluster 21
  |++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=54s  
Calculating cluster 22
  |++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=01m 11s
Calculating cluster 23
  |++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=01m 05s
Warning messages:
1: ggrepel: 7 unlabeled data points (too many overlaps). Consider increasing max.overlaps 
2: In UseMethod("depth") :
  no applicable method for 'depth' applied to an object of class "NULL"
3: In UseMethod("depth") :
  no applicable method for 'depth' applied to an object of class "NULL"
4: In UseMethod("depth") :
  no applicable method for 'depth' applied to an object of class "NULL"
> 
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 222,252评论 6 516
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 94,886评论 3 399
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 168,814评论 0 361
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,869评论 1 299
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,888评论 6 398
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 52,475评论 1 312
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 41,010评论 3 422
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,924评论 0 277
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 46,469评论 1 319
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,552评论 3 342
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,680评论 1 353
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 36,362评论 5 351
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 42,037评论 3 335
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,519评论 0 25
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,621评论 1 274
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 49,099评论 3 378
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,691评论 2 361