单细胞测序流程(八)单细胞的marker基因转化和GO富集分析
作者:互联网
系列文章目录
单细胞测序流程(三)质控和数据过滤——Seurat包分析,小提琴图和基因离差散点图
单细胞测序流程(五)t-sne聚类分析和寻找marker基因
单细胞测序流程(七)单细胞的细胞类型轨迹分析
————————————————
本期主讲内容——单细胞的maeker基因转化和富集分析
marker基因转化是为了将基因的id和基因名进行转换,方便后续的计算,富集分析是对marker进行可视化分析,但是我我们需要知道富集富集,富集是要看跟谁比!在做富集分析的时候,要先看所有基因的平均表达量或者每个go富集的基因数,谁的表达量高,谁的基因数多那么这就是富集的,这个富集是通过对比求出来的
一、课前准备
之前所使用的数据(上个课程中运行结果这就是在所需的数据)
R语言的IDE
提示:以下是本篇文章正文内容,下面案例可供参考
二、过程
使用脚本将基因的名字转换为基因ID,之前的结果会产生一个06.marker.xls文件,找到这个文件(可以将数据进行整理,比如支队cluster10亚群感兴趣,那就只剩下这个亚群的所有基因就可以了),新建一个txt文件,命名为symbol.txt然后将杠杠的xls文件中的gene和logFC两列复制到txt文件中来,注意行名不要复制过来,然后使用R语言代码就可以把基因名字转换为基因ID
#if (!requireNamespace("BiocManager", quietly = TRUE))
# install.packages("BiocManager")
#BiocManager::install("org.Hs.eg.db")
setwd("文件的目录") #设置工作目录
library("org.Hs.eg.db") #引用包
rt=read.table("symbol.txt",sep="\t",check.names=F,header=T) #读取文件
genes=as.vector(rt[,1])
entrezIDs <- mget(genes, org.Hs.egSYMBOL2EG, ifnotfound=NA) #找出基因对应的id
entrezIDs <- as.character(entrezIDs)
out=cbind(rt,entrezID=entrezIDs)
write.table(out,file="id.txt",sep="\t",quote=F,row.names=F) #输出结果
转换后的结果
接下来是GO富集分析,结果如下:
横坐标是富集在GO term中的基因数左边的是GO的功能,右边是GO属于什么数据库以及可以看出颜色所代表的含义,越红代表越显著
横坐标代表基因所占的比例,右边可以看出点的大小所代表的含义,点越大,富集的基因越多,颜色越红代表富集越显著。
代码:
#install.packages("colorspace")
#install.packages("stringi")
#install.packages("ggplot2")
#if (!requireNamespace("BiocManager", quietly = TRUE))
# install.packages("BiocManager")
#BiocManager::install("DOSE")
#if (!requireNamespace("BiocManager", quietly = TRUE))
# install.packages("BiocManager")
#BiocManager::install("clusterProfiler")
#if (!requireNamespace("BiocManager", quietly = TRUE))
# install.packages("BiocManager")
#BiocManager::install("enrichplot")
library("clusterProfiler")
library("org.Hs.eg.db")
library("enrichplot")
library("ggplot2")
setwd("工作目录") #设置工作目录
rt=read.table("id.txt",sep="\t",header=T,check.names=F) #读取id.txt文件
rt=rt[is.na(rt[,"entrezID"])==F,] #去除基因id为NA的基因
gene=rt$entrezID
#GO富集分析
kk <- enrichGO(gene = gene,
OrgDb = org.Hs.eg.db,
pvalueCutoff =0.05,
qvalueCutoff = 0.05,
ont="all",
readable =T)
write.table(kk,file="GO.txt",sep="\t",quote=F,row.names = F) #保存富集结果
#柱状图
pdf(file="barplot.pdf",width = 10,height = 8)
barplot(kk, drop = TRUE, showCategory =10,split="ONTOLOGY") + facet_grid(ONTOLOGY~., scale='free')
dev.off()
#气泡图
pdf(file="bubble.pdf",width = 10,height = 8)
dotplot(kk,showCategory = 10,split="ONTOLOGY") + facet_grid(ONTOLOGY~., scale='free')
dev.off()
注意:进行GO分析时需要使用转换后的基因ID
三、结尾
因为这次的结果很多取决于之前的数据,所以必须要把上一节课的内容也要用到,所以要保证之前所得到结果无误才可以。
单细胞测序流程(八)单细胞的细胞类型的marker基因ID转化和GO富集分析到这里就已结束了
下一章会讲解GO圈图的绘画,这次很多取得的数据都会用于下次课程不要删除哦。
我所做的所有分析与教程的代码都会在我的个人公众号中,请打开微信搜索“生信学徒”进行关注,欢迎生信的研究人员和同学前来讨论分析。
ps:公众号刚刚建立比较简陋,但是该有的内容都不会少。
标签:富集,install,测序,基因,单细胞,GO,BiocManager 来源: https://blog.csdn.net/qq_45478665/article/details/118965401