eggNOG 5.0数据库介绍
1. eggNOG简介
最近考虑到所用的一些数据库太旧了,需要更新。在整理的时候发现eggNOG数据库在去年的时候已经做了一次更新eggNOG 5.0: a hierarchical, functionally and phylogenetically annotated orthology resource based on 5090 organisms and 2502 viruses。距离上个版本eggNOG4.5已经过去了3-4年,更新频率相对来说比较慢。但这次更新的内容是翻倍式增加的,以下是4.5和5.0比较。


eggNOG数据库全称是:直系同源蛋白分组比对(evolutionary genealogy of genes: Non-supervised Orthologous Groups)数据库,由EMBL创建维护,是对NCBI的COG数据库进行拓展,提供不同分类水平蛋白的直系同源分组(Orthologous Groups,OG),包括真核、原核及病毒的数据信息。它扩展了COG数据库的分类方法,采用无监督聚类算法在全基因组范围内推导基因功能,更适用于谱系特征基因的分析。
2. eggNOG-Mapper注释原理
常规功能注释方法基于序列相似性寻找直系同源基因,常用blast+blast2go或InterProscan来注释,这种方法可能找到旁系同源基因,而eggNOG能区分旁系和直系同源基因,因此开发出eggNOG-mapper来进行功能注释。eggNOG v5.0对应的工具是eggNOG-mapper v2。
注释的过程可分为图下四个过程:
- A. 序列比对:通过HMMER搜索HMMs数据库找到OG,或者通过DIAMOND搜索蛋白数据库(速度更快,更适合宏组学),每条序列的最佳匹配结果以 seed ortholog 形式存放,用于获取其他直系同源基因。
- B. 获取直系同源基因:通过seed ortholog来提取一个或一组精细的直系同源基因。
- C.去除关系较远的直系同源基因:根据bit-score或E-value对结果进行一次过滤,剔除同源性不高的结果。
- D. 功能注释:蛋白序列搜索到的直系同源基因的功能描述就是最终的注释结果,如GO、KEGG、COG等。

3. eggNOG 5.0数据资源
数据库是生物信息的基础,每个生物数据库都有各自的特点(主要是从不同角度说明生物问题),但信息的全面、分类和准确性是数据库的关键。eggNOG 5.0的下载数据在:http://eggnog5.embl.de/download/eggnog_5.0/

其中e5.proteomes.faa为所有的蛋白组序列,e5.viruses.faa为所有的病毒蛋白序列,e5.taxid_info.tsv为Taxid对应的物种名称以及完整的谱系信息,e5.og_annotations.tsv为所有的NOG信息,其第一列为Taxid,第二列为NOG groups,第三列为COG归属,第四列为Function。
除了功能,每个物种都有相应的注释信息http://eggnog5.embl.de/download/eggnog_5.0/per_tax_level/,比如1060(TaxID):

5000余个物种对功能注释来说是比较全面的了,但如果要做物种注释,那是远远不够的。
4. eggNOG-Mapper使用
在eggnog-mapper使用之前应该准备好:python、hmmer、diamond、fasta、注释数据库。
# 下载软件
git clone https://github.com/jhcepas/eggnog-mapper.git
# 下载数据库
cd eggnog-mapper ./download_eggnog_data.py euk #euk真核,bact原核,arch古菌,viruses病毒
#注释
python emapper.py -i test.fa --output ./ -d euk #默认以HMMER搜索
python emapper.py -m diamond -i test.fa --output ./ -d euk #指定搜索数据库类型,可大类、小类
python emapper.py -i test.fa --output ./ -d maNOG #哺乳动物NOG
python emapper.py -i test.fa --output ./ -d maNOG --usemem --cpu 10 #内存和线程
至于eggNOG注释的结果,包括了一些匹配和得分信息,以及GO,KEGG,BiGG,COG,KOG,NOG等功能注释结果。但不建议用它的GO和KEGG结果,因为这两个数据库是生信领域更新最快的,信息最全,eggNOG注释的结果可能会跟不上。可以采纳下它的COG、KOG、NOG的注释信息,因为COG/KOG几乎没有更新了,还停留在2003-2014年:https://www.ncbi.nlm.nih.gov/COG/。
5. NOG、KOG、COG、KEGG、GO区别?
KEGG(Encyclopedia of Genes and Genomes)和GO(Gene Ontology)耳熟能详就不解释了,至少是目前权威公认的两大数据库。
主要是NOG和KOG、COG有点懵。
相同点:三者都是同源分类数据库,即都是OG(Orthologous Groups)。
不同点:
- COG:Clusters of Orthologous Groups of proteins,即同源蛋白簇,是NCBI的一个数据库。根据生物完整基因组的编码蛋白系统进化关系分类构建而成,每一簇COG由直系同源序列构成,从而可以推测该序列的功能,按功能共可以分为二十六类。
- KOG:EuKaryotic Orthologous Groups(为什么不叫EOG?问号脸)。广义上COG分为真核和原核生物两类,原核的一般称为COG数据库,真核的一般称为KOG数据库。
- NOG:Non-supervised Orthologous Groups,注意是非监督,因COG未及时更新,EMBL EggNOG对COG进行了完善,极大拓展了基因组信息,主要是基于HMM分析提供更细致的OG分析。
做了eggNOG,还有必要做COG/KOG吗?做不做都可以,主要看心情,看哪个更能解释你的生物学问题。一般来说,差别不会太大,COG虽然过时,但权威性还在呀。
附:不同功能数据库的层级划分

Ref:
应该是最好的eggnog-mapper功能注释教程
时隔四年,NOG数据库更新啦!
宏基因组功能注释(以COG为例)
https://www.biostars.org/p/286615/
eggNOG 5.0数据库介绍的更多相关文章
- 从零开始编写自己的C#框架(6)——SubSonic3.0插件介绍(附源码)
前面几章主要是概念性的东西为主,向初学者们介绍项目开始前的一些知识与内容,从本章开始将会进入实操阶段,希望跟着本系统学习的朋友认真按说明做好每一步操作(对于代码最好是直接照着文档内容在你的IDE中打一 ...
- .Net Core 2.0生态(4):Entity Framework Core 2.0 特性介绍和使用指南
前言 这是.Net Core 2.0生态生态介绍的最后一篇,EF一直是我喜欢的一个ORM框架,随着版本升级EF也发展到EF6.x,Entity Framework Core是一个支持跨平台的全新版本, ...
- 数据库介绍(MySQL安装 体系结构、基本管理)
第1章 数据库介绍及mysql安装 1.1 数据库简介 数据库,简而言之可视为电子化的文件柜——存储电子文件的处所,用户可以对文件中的数据运行新增.截取.更新.删除等操作. 所谓“数据库”系以一定方式 ...
- MongoDB:数据库介绍与基础操作
二.部署在本地服务器 在上次的学习过程中,我们主要进行了MongoDB运行环境的搭建和可视化工具的安装.此次我们将学习MongoDB有关的基本概念和在adminmongo上的基本操作.该文档中的数据库 ...
- 【转】数据库介绍(MySQL安装 体系结构、基本管理)
[转]数据库介绍(MySQL安装 体系结构.基本管理) 第1章 数据库介绍及mysql安装 1.1 数据库简介 数据库,简而言之可视为电子化的文件柜——存储电子文件的处所,用户可以对文件中的数据运行新 ...
- Redis数据库介绍
引言 redis是一个开源的.使用C语言编写的.支持网络交互的.可基于内存也可持久化的Key-Value数据库. redis数据结构 redis是一种高级的key:value存储系统,其中value支 ...
- 【EF】Entity Framework Core 2.0 特性介绍和使用指南
阅读目录 前言 获取和使用 新特性 项目升级和核心API变化 下一步计划 遗憾的地方 回到目录 前言 这是.Net Core 2.0生态生态介绍的最后一篇,EF一直是我喜欢的一个ORM框架,随着版本升 ...
- Mysql数据库介绍、安装和配置文件
Mysql数据库介绍.安装和配置文件 MySQL数据库介绍 mysql是开源关系型数据库,遵循GPL协议. mysql的特点是性能卓越且服务稳定,开源,无版本限制,成本低,单进程多线程,多用户,基于C ...
- MySQL数据库 介绍,安装,基本操作
- 数据库介绍: 1.随意存放在一个文件中的数据,数据的格式千差万别 tank|123 jason:123 sean~123 2.软件开发目录规范 - Project: - conf - bin - ...
随机推荐
- Java中的函数式编程(八)流Stream并行编程
写在前面 在本系列文章的第一篇,我们提到了函数式编程的优点之一是"易于并发编程". Java作为一个多线程的语言,它通过 Stream 来提供了并发编程的便利性. 题外话: 严格来 ...
- [技术博客]WEB实现划词右键操作
[技术博客]WEB实现划词右键操作 一.功能解释 简单地对题目中描述的功能进行解释:在浏览器中,通过拖动鼠标选中一个词(或一段文字),右键弹出菜单,且菜单为自定义菜单,而非浏览器本身的菜单.类似的功能 ...
- PCB中,Solder Mask与Paste Mask有啥区别呢?
Solder Mask Layers: 即阻焊层.顾名思义,他的存在是为了防止PCB在过波峰焊的时候,不应涂锡的地方粘上锡. 可以简单理解为一个洞,该区域(洞)以外的地方,都不允许有焊锡,即只能涂绿油 ...
- 【做题记录】[NOI2008] 假面舞会—有向图上的环与最长链
luogu 1477 [NOI2008] 假面舞会 容易发现: 如果图中没有环,那么面具种数一定是所有联通块内最长链之和,最少为 \(3\) . 如果有环,则面具种数一定是所有环的大小的最大公约数. ...
- 【做题记录】CF1428E Carrots for Rabbits—堆的妙用
CF1428E Carrots for Rabbits 题意: 有 \(n\) 个萝卜,每个萝卜的初始大小为 \(a_i\) .现在要把这些萝卜切为为 \(k\) 个.吃每一个萝卜的时间为这个萝卜的大 ...
- python mysqlclient安装失败 Command "python setup.py egg_info" failed with error code 1
python2 python3 中代码 pip install mysqlclient 都安装失败的话, 很有可能是你的操作系统中没有安装mysql 如果确定已经安装了,请忽略下面的内容. Ubunt ...
- C#笔记1__命名空间 / 常量 / object / is、as、...?... :...
命名空间:namespace Test1{ ... } 引用命名空间:using System; using 别名=命名空间 常量:const double PI=3.14; using System ...
- linux 内核源代码情景分析——Intel X86 CPU 系列的寻址方式
当我们说一个CPU是"16位"或"32"位时,指的是处理器中"算数逻辑单元"(ALU)的宽度.数据总线通常与ALU具有相同的宽度.当Inte ...
- Linux oracle 导入sql文件
1.@sql文件的路径 SQL>@/data/xx.sql; 2.导入完毕 commit;
- 启用或禁用普通用户Exchange Online PowerShell功能
默认情况下,允许在 Microsoft 365 中创建的所有帐户都可以使用 Exchange Online PowerShell.管理员可以使用 Exchange Online PowerShell ...