細(xì)胞類型自動(dòng)化注釋
# 數(shù)據(jù)來源:http://biocc.hrbmu.edu.cn/CellMarker/download.jsp
library(dplyr)
library(openxlsx)
#### 1. 加載marker數(shù)據(jù)庫 ####
load("./Human_cell_markers.RData")
cellmarker.file <- "./multi/multi_total_marker_genes_tsne_20PC.txt"
sampleid <- "multi"
#讀入單細(xì)胞分析中輸出的cell marker 基因文件
marker.gene <- read.table(cellmarker.file,header = T,stringsAsFactors = F,sep = "\t")
marker.gene.sig <- marker.gene %>% filter(as.numeric(p_val_adj) <= 0.05)
cat("Totally marker genes:",length(unique(marker.gene.sig$gene)))
table(marker.gene.sig$cluster)
#### 2. 定位數(shù)據(jù)庫中存在的基因 ####
marker.gene.sig %>% filter(gene %in% cell.markers.tb$geneSymbol) -> marker.gene.sel
marker.gene.sel$cellMarker <- apply(marker.gene.sel,1,function(x)paste(unique(cell.markers.tb[cell.markers.tb$geneSymbol == x["gene"],1]),collapse = ","))
cat("Totally find",length(unique(marker.gene.sel$gene)),"/",length(unique(marker.gene.sig$gene)),"genes in cellMarker db")
#### 3. 將marker基因與細(xì)胞類型結(jié)果寫出到文件 ####
write.table(marker.gene.sel,file =paste0("./",sampleid,"/",sampleid,"_DEG_marker_cells_tsne.txt"),row.names = T,col.names = T,sep = "\t",quote = F)
#sub_analysis_scRNA
以下代碼在sub_analysis_scRNA.R中
計(jì)算特定兩組細(xì)胞之間的差異基因业筏,決定要不要把兩個(gè)亞群合并
# 計(jì)算特定兩組細(xì)胞之間的差異基因
sub.markers <- FindMarkers(experiment.aggregate,
ident.1 = c("0","3"),
ident.2 = "1")
View(sub.markers)
修改具體類別名字
# 修改具體類別的名字(需要基于marker基因來定義)
experiment.merged <- RenameIdents(
object = experiment.aggregate,
"0" = "B cells type1",
"2" = "B cells type2",
"3" = "B cells type1"
)
pdf(paste0("./",sam.name,"/CellCluster-TSNEPlot_Rename_",max(dim.use),"PC.pdf"),width = 5,height = 4)
DimPlot(object = experiment.merged, pt.size=0.5,
reduction = "tsne",label = T) +
ggsci::scale_color_igv()
dev.off()