2021-05-11 转录组分析学习笔记:关于ENSEMBL 转换 ENTREZID的一点心得

    两年来,参加了无数线上和线下的生信学习班,但是一直都没能学明白。这次参加完生信技能树举办的为期一个月的线上生信入门班课程,仿佛醍醐灌顶一样,瞬间打通了我的任督二脉,在此由衷的感谢生信技能书的各位老师们。
   因工作太忙的缘故,上完课都一个多月了,才有时间来分析自己的RNAseq测序数据。凭着从生信技能树各位老师那里学来的技能,很快就顺利完成从数据质控和过滤、比对到参考基因组、到基因表达定量的全套上游分析流程。然后,在顺利完成差异表达分析后,开始对差异基因进行功能分析。期间,在将表达矩阵里的ENSEMBL转换成ENTREZID时遇到了点麻烦...通过一个晚上的努力,最后成功解决了这个问题,在这里简单总结一下,希望能为转录组分析初学者提供一点前车之鉴。

1. 用clusterProfiler包的bitr函数时遇到报错:
image.png

报错信息提示,我输入了错误的ENSEMBL id,为了查找原因,我首先查看了一下我输入的ENSEMBL id。
image.png

没发现有什么问题啊,挑一个id取ENSEMBL网站上检索了一下,可以检索到。

2. 利用自己学到的R技能来查找问题的根源

1). 首先,对比org.Mmu.eg.dbR包里的ENSEMBL id与我输入文件里的ENSEMBL id,看看到底存不存在交集。
image.png

结果发现,两个包含2万左右id的向量,竟然没有一个交集!

2).然后,肉眼比对一下这两个文件中的id,发现一个是ENSMMUG,另一个是ENSMUSG!
image.png

3).通过搜索,才知道ENSMmu是猕猴,而ENSMus才是小鼠,org.Mmu.eg.db是猕猴的基因注释包,而org.Mm.eg.db才是小鼠的基因注释包!
image.png

这个与物种的拉丁缩写对照表不一样,所以我会犯错!
image.png

3.不用R包,用代码完成id转换

一番折腾,引发了我的兴趣,发现R包进行代码转换,会有18.93%的输入基因不能匹配到ENTREZID,干脆我试试用代码来进行转换。

1).登录Linux服务器,下载NCBI的gene2ensembl.gz文件
image.png

2).用awk命令,获得小鼠ENSEMBL和ENTREZID的对照表
image.png
image.png

3).导入Rstudio,完成id转换
image.png

4).大功告成!代码转换的,比R包转换多注释了50个基因id
image.png

5).最后,完成一下健明老师不止给我的作业,查一下总共有多少个用于注释物种基因组信息的R包,交个小作业,在bioconda-cloud里检索了,总共113个。
image.png

你可能感兴趣的:(2021-05-11 转录组分析学习笔记:关于ENSEMBL 转换 ENTREZID的一点心得)