美文网首页
单细胞数据挖掘实战:文献复现(八)marker基因在Hom-MG

单细胞数据挖掘实战:文献复现(八)marker基因在Hom-MG

作者: 生信开荒牛 | 来源:发表于2022-08-17 10:53 被阅读0次

    单细胞数据挖掘实战:文献复现(一)批量读取数据

    单细胞数据挖掘实战:文献复现(二)批量创建Seurat对象及质控

    单细胞数据挖掘实战:文献复现(三)降维、聚类和细胞注释

    单细胞数据挖掘实战:文献复现(四)细胞比例饼图

    单细胞数据挖掘实战:文献复现(五)细胞亚群并可视化

    单细胞数据挖掘实战:文献复现(六)标记基因及可视化

    单细胞数据挖掘实战:文献复现(七)MG 和 Mo/MΦ 评分

    这篇文献的第四个结果就是观察了marker基因在Hom-MG、 Act-MG 和 Mo/MΦ 细胞中的表达情况,结果主要体现在Fig. 4中。

    一、将cell_type由三类细分为四类

    • Hom-MG: h.Microglia <- ctrl_Microglia
    • Act-MG: a.Microglia <- tumor_Microglia
    • Mo/MΦ: Macrophages
    • BAM
    table(Idents(seu_object))
    #   MG Mo/MΦ   BAM 
    #31959  5624  1680
    #选出"MG","Mo/MΦ"
    seu_object <- subset(seu_object, idents = c("MG","Mo/MΦ"))
    table(Idents(seu_object))
    #   MG Mo/MΦ 
    #31959  5624
    #将Microglia细分为"h.Microglia"和"a.Microglia"
    Idents(seu_object) <- seu_object$seurat_clusters
    seu_object$cell_type_4_groups <- plyr::mapvalues(Idents(seu_object), 
                                         from=c(0:4,6:11,13,14,16,18,19), 
                                         to = c("h.Microglia",  "h.Microglia", "a.Microglia",                                           "h.Microglia", "Macrophages", "h.Microglia",  
                                                "h.Microglia", "Macrophages","a.Microglia",                                             "a.Microglia", "Macrophages","a.Microglia", 
                                                "h.Microglia", "Macrophages" ,"Macrophages",                                            "Macrophages"))
    # Figure 4a
    # left panel
    DimPlot(seu_object, group.by = "cell_type_4_groups")
    
    1.png

    二、Act-MG 和 Mo/MΦ 中差异上调基因的表达水平

    数据处理

    Idents(seu_object) <- seu_object$cell_type_4_groups
    #markers_ActMG_vs_HomMG
    markers_ActMG_vs_HomMG <- FindMarkers(object = seu_object, ident.1 = "a.Microglia", 
                                          ident.2 = "h.Microglia", only.pos = TRUE, min.pct = 0.25, 
                                          logfc.threshold = 0.25)
    markers_ActMG_vs_HomMG$gene <- rownames(markers_ActMG_vs_HomMG)
    #markers_MoM_vs_ActMG
    markers_MoM_vs_ActMG <- FindMarkers(object = seu_object, ident.1 = "Macrophages", 
                                        ident.2 = "a.Microglia", only.pos = TRUE, min.pct = 0.25, 
                                        logfc.threshold = 0.25)
    markers_MoM_vs_ActMG$gene <- rownames(markers_MoM_vs_ActMG)
    

    画图

    Fig. 4b

    #画图
    genes <- unique(c(markers_ActMG_vs_HomMG$gene, markers_MoM_vs_ActMG$gene))
    gene_expression_data <- GetAssayData(object = seu_object, slot = "data")
    gene_expression_data <- as.data.frame(t(gene_expression_data[genes, ]))
    
    common_genes <- intersect(markers_ActMG_vs_HomMG$gene, markers_MoM_vs_ActMG$gene)
    markers_ActMG_only <- markers_ActMG_vs_HomMG$gene[!(markers_ActMG_vs_HomMG %in% common_genes)]
    markers_MoM_only <- markers_MoM_vs_ActMG$gene[!(markers_MoM_vs_ActMG$gene %in% common_genes)]
    
    genes <- unique(c(markers_ActMG_vs_HomMG$gene, markers_MoM_vs_ActMG$gene))
    cell_types_selected <- c("h.Microglia", "a.Microglia", "Macrophages")
    names(cell_types_selected) <- c("h.Microglia", "a.Microglia", "Macrophages")
    genes_mean_expr <- sapply(cell_types_selected, function(cell_type) {
      Matrix::rowMeans(seu_object@assays$RNA@data[genes, 
                                                  colnames(seu_object)[seu_object$cell_type_4_groups == cell_type]],
                       na.rm = T)
    })
    
    colnames(genes_mean_expr)[1:3]<-c("Hom_MG", "Act_MG", "MoMphi")
    genes_mean_expr <- as.data.frame(genes_mean_expr)
    genes_mean_expr$gene <- rownames(genes_mean_expr)
    
    labels<-c("Ly6c2", "Ccl5", "Ly6i", "Lyz2",   "Lgals3","Ifitm2", 
              "Tgfbi","Tmsb10", "Il1rn","Ass1","Ifitm3","Il1b", 
              "Irf7","Ccr2", "H2-Aa","H2-Ab1", "H2-Eb1","Cd74","Ifit3",        
              "Il18bp", "Mif", "Apoe", "Stat1", "Ccl12",  "H2-D1",  "Ccl4", "Ccl3", "Ly86")
    
    genes_mean_expr$color <- 0
    genes_mean_expr[genes_mean_expr$gene %in% markers_ActMG_only, "color"]<-"Act-MG"
    genes_mean_expr[genes_mean_expr$gene %in% markers_MoM_only, "color"]<-"MoM"
    genes_mean_expr[genes_mean_expr$gene %in% common_genes, "color"]<-"common"
    genes_mean_expr$color<-factor(genes_mean_expr$color, levels=c("Act-MG", "MoM", "common"))
    
    genes_mean_expr_labeled <- genes_mean_expr[labels, ]
    
    col_Macro<-"#FABF00"
    col_ActMG<-"#2F8EA1"
    
    pdf(file = "fig4_scat.pdf",width = 10, height = 10)
    ggplot(genes_mean_expr, aes(x=Act_MG, y=MoMphi))+
      geom_jitter(aes(fill=color),shape=21, color="white", alpha=0.7, size=4)+
      geom_text_repel(data=genes_mean_expr_labeled, aes(label=gene), nudge_y=0.2, size=5,
                      direction="both")+
      geom_abline(intercept=0, slope=1)+
      scale_fill_manual(values=c(col_ActMG, col_Macro, "black"))+ 
      xlim(0,5)+
      ylim(0,5)+
      xlab("Act-MG")+
      ylab("MoMphi")+
      coord_fixed()+
      theme_bw(base_size = 18)+
      theme(panel.grid = element_blank())
    dev.off()
    
    2.png

    Fig. 4c
    Hom-MG 与 Act-MG 和 Act-MG 与 Mo/MΦ 中前 25 个上调基因的表达情况

    markers_MoM_vs_ActMG <- markers_MoM_vs_ActMG[order(-markers_MoM_vs_ActMG$avg_log2FC),]
    markers_ActMG_vs_HomMG <- markers_ActMG_vs_HomMG[order(-markers_ActMG_vs_HomMG$avg_log2FC),]
    genes_for_heatmap <- unique(c(markers_MoM_vs_ActMG$gene[1:25], markers_ActMG_vs_HomMG$gene[1:25]))
    genes_mean_expr_heatmap <- genes_mean_expr[genes_for_heatmap, ]
    
    mat_breaks <- seq(0, abs(max(genes_mean_expr_heatmap[,1:3])), length=51)
    
    library(pheatmap)
    pheatmap(
      mat               = genes_mean_expr_heatmap[, 1:3],
      color             = colorRampPalette(rev(c("#810f7c", "#8856a7", "#8c96c6", "#b3cde3", "#edf8fb")))(length(mat_breaks) - 1),
      breaks            = mat_breaks,
      border_color      = NA,
      cluster_cols      = F,
      cluster_rows      = F,
      show_colnames     = TRUE,
      show_rownames     = TRUE,
      treeheight_col    = 0,
      treeheight_row    = 0,
      gaps_row          = 25,
      drop_levels       = TRUE,
      fontsize          = 10,
      angle_col         = 0,
      main              = "Top upregulated genes in Act-MG and MoM"
    )
    
    3.png

    往期单细胞数据挖掘实战

    单细胞数据挖掘实战:文献复现(一)批量读取数据

    单细胞数据挖掘实战:文献复现(二)批量创建Seurat对象及质控

    单细胞数据挖掘实战:文献复现(三)降维、聚类和细胞注释

    单细胞数据挖掘实战:文献复现(四)细胞比例饼图

    单细胞数据挖掘实战:文献复现(五)细胞亚群并可视化

    单细胞数据挖掘实战:文献复现(六)标记基因及可视化

    单细胞数据挖掘实战:文献复现(七)MG 和 Mo/MΦ 评分

    相关文章

      网友评论

          本文标题:单细胞数据挖掘实战:文献复现(八)marker基因在Hom-MG

          本文链接:https://www.haomeiwen.com/subject/ppejgrtx.html