功能注释数据库(Functional Annotation Databases)¶
面试方向:宏基因组/16S/细菌基因组 | 结合百迈客实习经历
1. 一句话概述¶
功能注释将基因/蛋白序列映射到已知数据库,揭示微生物群落的代谢潜力和功能特征。这是宏基因组分析中从"谁在那里"(物种组成)到"它们能做什么"(功能潜力)的关键跨越。
2. 核心知识点:数据库总览¶
2.1 数据库对照表¶
| 数据库 | 全称 | 注释内容 | 常用注释工具 | 结果解读要点 |
|---|---|---|---|---|
| KEGG | Kyoto Encyclopedia of Genes and Genomes | 代谢通路、KO编号、模块 | KofamScan, eggNOG-mapper, HUMAnN3, DIAMOND+KEGG | 关注pathway层级(Level 1/2/3),KO号关联通路 |
| COG | Clusters of Orthologous Groups | 直系同源基因簇,功能大类 | eggNOG-mapper, RPS-BLAST | 26个功能类别字母编码(J/K/L等) |
| eggNOG | evolutionary genealogy of genes: Non-supervised Orthologous Groups | 直系同源基因扩展注释 | eggNOG-mapper v2 | 整合COG/KOG/arCOG,提供GO/KEGG交叉注释 |
| CAZy | Carbohydrate-Active enZYmes | 碳水化合物活性酶 | dbCAN3 (run_dbcan), DIAMOND vs CAZy | 六大家族:GH/GT/PL/CE/AA/CBM |
| VFDB | Virulence Factor Database | 毒力因子 | ABRicate, DIAMOND vs VFDB | 毒力因子类型、致病机制 |
| CARD | Comprehensive Antibiotic Resistance Database | 抗生素耐药基因 | RGI (Resistance Gene Identifier), ABRicate | 耐药机制分类(efflux/target modification等) |
| ResFinder | Resistance Finder | 获得性耐药基因 | ResFinder在线/ABRicate | 耐药表型预测 |
| MEROPS | MEROPS the Peptidase Database | 蛋白酶/肽酶 | DIAMOND blastp vs MEROPS | 蛋白酶家族和clan分类 |
| P450 | Cytochrome P450 Engineering Database | 细胞色素P450酶 | DIAMOND blastp | P450家族命名和功能 |
| GO | Gene Ontology | 基因功能本体论 | InterProScan, eggNOG-mapper | 三大类:BP/MF/CC |
| Pfam | Protein families database | 蛋白质结构域/家族 | HMMER (hmmscan), InterProScan | 结构域组合、家族归属 |
| dbCAN | DataBase for automated Carbohydrate-active enzyme ANnotation | CAZy的HMM注释平台 | run_dbcan (dbCAN3) | 整合HMMER+DIAMOND+eCAMI三种方法 |
2.2 KEGG 详解(Kyoto Encyclopedia of Genes and Genomes)¶
KEGG 层级结构(面试高频)¶
Level 1 (大类,共7类)
├── Metabolism(代谢) ← 宏基因组最关注
├── Genetic Information Processing(遗传信息处理)
├── Environmental Information Processing(环境信息处理)
├── Cellular Processes(细胞过程)
├── Organismal Systems(有机体系统)
├── Human Diseases(人类疾病)
└── Drug Development(药物开发)
Level 2 (亚类,约50类)
├── Carbohydrate metabolism(碳水化合物代谢)
├── Amino acid metabolism(氨基酸代谢)
├── Lipid metabolism(脂质代谢)
└── ...
Level 3 (具体通路,约500条)
├── ko00010 Glycolysis/Gluconeogenesis(糖酵解/糖异生)
├── ko00020 Citrate cycle (TCA cycle)(三羧酸循环)
├── ko00030 Pentose phosphate pathway(磷酸戊糖途径)
└── ...
KEGG 核心概念¶
| 概念 | 英文 | 说明 | 编号示例 |
|---|---|---|---|
| KO | KEGG Orthology | 直系同源基因功能单元 | K00001 |
| Pathway | KEGG Pathway | 代谢通路图 | ko00010 |
| Module | KEGG Module | 通路中的功能单元 | M00001 |
| Reaction | KEGG Reaction | 生化反应 | R00001 |
| Compound | KEGG Compound | 化合物/代谢物 | C00001 |
KO号是核心枢纽:一个KO号可以关联到多个pathway、module和reaction。
KEGG 在宏基因组中的应用¶
基因序列 → KO注释 → Pathway映射 → 功能富集分析
↓
比较不同样本/分组间的代谢差异
2.3 COG/eggNOG 详解¶
COG 功能分类字母含义(面试常考)¶
| 字母 | 英文全称 | 中文含义 | 类别 |
|---|---|---|---|
| 信息存储与处理 | |||
| J | Translation, ribosomal structure and biogenesis | 翻译、核糖体结构和生物合成 | 信息 |
| A | RNA processing and modification | RNA加工和修饰 | 信息 |
| K | Transcription | 转录 | 信息 |
| L | Replication, recombination and repair | 复制、重组和修复 | 信息 |
| B | Chromatin structure and dynamics | 染色质结构和动力学 | 信息 |
| 细胞过程和信号传导 | |||
| D | Cell cycle control, cell division, chromosome partitioning | 细胞周期控制、细胞分裂 | 细胞 |
| Y | Nuclear structure | 核结构 | 细胞 |
| V | Defense mechanisms | 防御机制 | 细胞 |
| T | Signal transduction mechanisms | 信号转导机制 | 细胞 |
| M | Cell wall/membrane/envelope biogenesis | 细胞壁/膜/包膜生物合成 | 细胞 |
| N | Cell motility | 细胞运动 | 细胞 |
| Z | Cytoskeleton | 细胞骨架 | 细胞 |
| W | Extracellular structures | 胞外结构 | 细胞 |
| U | Intracellular trafficking, secretion, and vesicular transport | 胞内转运、分泌 | 细胞 |
| O | Posttranslational modification, protein turnover, chaperones | 翻译后修饰、蛋白质周转 | 细胞 |
| 代谢 | |||
| C | Energy production and conversion | 能量产生和转化 | 代谢 |
| G | Carbohydrate transport and metabolism | 碳水化合物转运和代谢 | 代谢 |
| E | Amino acid transport and metabolism | 氨基酸转运和代谢 | 代谢 |
| F | Nucleotide transport and metabolism | 核苷酸转运和代谢 | 代谢 |
| H | Coenzyme transport and metabolism | 辅酶转运和代谢 | 代谢 |
| I | Lipid transport and metabolism | 脂质转运和代谢 | 代谢 |
| P | Inorganic ion transport and metabolism | 无机离子转运和代谢 | 代谢 |
| Q | Secondary metabolites biosynthesis, transport, catabolism | 次生代谢物合成 | 代谢 |
| 功能不明 | |||
| R | General function prediction only | 仅一般功能预测 | 未知 |
| S | Function unknown | 功能未知 | 未知 |
面试技巧:记住三大类(信息/细胞/代谢)+ 各2-3个代表字母即可,不用全背。
2.4 CAZy 详解(Carbohydrate-Active enZYmes)¶
六大家族分类(面试高频)¶
| 家族缩写 | 英文全称 | 中文 | 功能 | 示例 |
|---|---|---|---|---|
| GH | Glycoside Hydrolases | 糖苷水解酶 | 水解糖苷键 | GH13(淀粉酶), GH5(纤维素酶) |
| GT | Glycosyl Transferases | 糖基转移酶 | 催化糖基转移 | GT2(纤维素合酶), GT4 |
| PL | Polysaccharide Lyases | 多糖裂解酶 | 裂解多糖 | PL1(果胶酸裂解酶) |
| CE | Carbohydrate Esterases | 碳水化合物酯酶 | 水解酯键 | CE1(乙酰木聚糖酯酶) |
| AA | Auxiliary Activities | 辅助活性酶 | 氧化还原辅助 | AA1(漆酶), AA9(LPMO) |
| CBM | Carbohydrate-Binding Modules | 碳水化合物结合模块 | 结合底物,不催化 | CBM1(纤维素结合) |
CAZy 在宏基因组中的意义¶
- 揭示微生物群落的碳水化合物降解能力
- 研究肠道菌群如何分解膳食纤维
- 分析土壤/海洋微生物的有机碳循环
- GH家族最多样,是研究重点
2.5 VFDB 详解(Virulence Factor Database)¶
毒力因子分类¶
| 类型 | 英文 | 功能 | 示例 |
|---|---|---|---|
| 黏附因子 | Adherence | 帮助细菌附着宿主细胞 | fimbriae(菌毛), pili(纤毛) |
| 侵袭因子 | Invasion | 侵入宿主细胞/组织 | invasin |
| 毒素 | Toxin | 直接损伤宿主 | hemolysin(溶血素), enterotoxin(肠毒素) |
| 免疫逃避 | Immune evasion | 逃避宿主免疫 | capsule(荚膜) |
| 铁摄取系统 | Iron uptake | 从宿主获取铁 | siderophore(铁载体) |
| 分泌系统 | Secretion system | 分泌效应蛋白 | T3SS, T6SS |
2.6 CARD 与耐药基因分析¶
耐药机制分类¶
| 机制 | 英文 | 说明 |
|---|---|---|
| 抗生素外排 | Antibiotic efflux | 将抗生素泵出细胞 |
| 靶点修饰 | Target alteration | 修改抗生素作用靶点 |
| 抗生素灭活 | Antibiotic inactivation | 酶解/修饰抗生素 |
| 靶点保护 | Target protection | 保护靶点不被抗生素结合 |
| 靶点替换 | Target replacement | 用不敏感靶点替换 |
| 通透性降低 | Reduced permeability | 减少抗生素进入细胞 |
CARD vs ResFinder 对比¶
| 特征 | CARD | ResFinder |
|---|---|---|
| 范围 | 全面,含突变型耐药 | 偏重获得性耐药基因 |
| 工具 | RGI (命令行) | ResFinder (在线+命令行) |
| 特色 | ARO本体论,机制分类详细 | 表型预测,临床相关性 |
| 整合 | ABRicate可调用 | ABRicate可调用 |
2.7 GO 详解(Gene Ontology)¶
三大类别(面试必知)¶
| 缩写 | 英文全称 | 中文 | 回答的问题 | 示例 |
|---|---|---|---|---|
| BP | Biological Process | 生物过程 | 这个基因参与什么过程? | GO:0006412 translation(翻译) |
| MF | Molecular Function | 分子功能 | 这个基因产物有什么分子功能? | GO:0003677 DNA binding(DNA结合) |
| CC | Cellular Component | 细胞组分 | 这个基因产物在细胞哪里? | GO:0005737 cytoplasm(细胞质) |
GO的层级结构¶
- GO是有向无环图(DAG),不是简单的树状
- 越靠近根节点越笼统(general),越靠近叶节点越具体(specific)
- 一个GO term可以有多个父节点
- 面试时理解三大类即可,不需要背具体term
2.8 Pfam 详解¶
| 特征 | 说明 |
|---|---|
| 内容 | 蛋白质家族和结构域的HMM模型集合 |
| 方法 | 基于HMM (Hidden Markov Model) 比对 |
| 工具 | HMMER (hmmscan/hmmsearch), InterProScan |
| 编号 | PF00001 格式 |
| 应用 | 鉴定蛋白质的功能域、预测蛋白功能 |
| 现状 | 已整合入InterPro数据库 |
2.9 dbCAN 详解¶
| 特征 | 说明 |
|---|---|
| 全称 | DataBase for automated Carbohydrate-active enzyme ANnotation |
| 本质 | CAZy数据库的自动化HMM注释平台 |
| 版本 | dbCAN3 (最新) |
| 三种方法 | HMMER (vs dbCAN HMMs) + DIAMOND (vs CAZy) + eCAMI (基于深度学习) |
| 判断标准 | 至少2种方法同时注释到才认为可靠 |
| 与CAZy关系 | dbCAN是CAZy的注释工具,CAZy是数据库本身 |
3. 注释工具及命令¶
3.1 eggNOG-mapper(最常用的综合注释工具)¶
# ============================================================
# eggNOG-mapper: 综合功能注释(可同时得到COG/GO/KEGG/Pfam注释)
# ============================================================
# ---- Step 1: 下载eggNOG数据库 ----
# download_eggnog_data.py 会下载eggNOG5数据库(约50GB)
download_eggnog_data.py \
--data_dir /path/to/eggnog_db/ # 数据库存放目录
# ---- Step 2: 运行注释(蛋白序列输入) ----
emapper.py \
-i proteins.faa \ # 输入:蛋白质序列(FASTA格式)
-o output_prefix \ # 输出文件前缀
--data_dir /path/to/eggnog_db/ \ # eggNOG数据库路径
-m diamond \ # 比对方法:diamond(快速)或hmmer(敏感)
--cpu 16 \ # 使用16个CPU线程
--override # 覆盖已有输出文件
# ---- Step 2b: 也可以直接注释核酸序列 ----
emapper.py \
-i genes.fna \ # 输入:核酸序列
--itype CDS \ # 输入类型:CDS(编码序列)
-o output_prefix \
--data_dir /path/to/eggnog_db/ \
-m diamond \
--cpu 16
# ---- 输出文件说明 ----
# output_prefix.emapper.annotations ← 主结果文件,包含:
# - COG类别(COG_category列)
# - GO注释(GOs列)
# - KEGG KO号(KEGG_ko列)
# - KEGG Pathway(KEGG_Pathway列)
# - Pfam域(PFAMs列)
# - eggNOG OG(eggNOG_OGs列)
# - 描述(Description列)
eggNOG-mapper 输出格式解读¶
# 输出文件是TSV格式,关键列:
# 列1: query 基因/蛋白ID
# 列5: eggNOG_OGs 直系同源组
# 列7: Description 功能描述
# 列10: GOs GO注释
# 列12: KEGG_ko KO号(如 ko:K00001)
# 列13: KEGG_Pathway 通路号(如 ko00010)
# 列14: KEGG_Module 模块号
# 列16: CAZy CAZy注释
# 列21: COG_category COG功能类别字母
# 列22: PFAMs Pfam域
3.2 HUMAnN3(宏基因组功能注释专用流程)¶
# ============================================================
# HUMAnN3: 宏基因组功能组成定量(MetaPhlAn配套工具)
# 输出通路丰度和基因家族丰度
# ============================================================
# ---- Step 1: 下载数据库 ----
# 下载ChocoPhlAn核酸数据库(微生物pangenome)
humann_databases --download chocophlan full /path/to/db/
# 下载UniRef蛋白数据库
humann_databases --download uniref uniref90_diamond /path/to/db/
# ---- Step 2: 运行HUMAnN3 ----
humann \
--input sample_R1R2.fastq.gz \ # 输入:质控后的宏基因组reads
--output humann3_output/ \ # 输出目录
--nucleotide-database /path/to/db/chocophlan/ \ # ChocoPhlAn数据库
--protein-database /path/to/db/uniref/ \ # UniRef数据库
--threads 16 \ # 线程数
--metaphlan-options "--bowtie2db /path/to/metaphlan_db" # MetaPhlAn数据库
# ---- 输出文件(三个核心结果) ----
# 1. *_genefamilies.tsv 基因家族丰度(UniRef90/KO/EC编号)
# 2. *_pathabundance.tsv 通路丰度(MetaCyc通路)
# 3. *_pathcoverage.tsv 通路覆盖度
# ---- Step 3: 转换为KEGG注释 ----
# 将基因家族丰度从UniRef90转换为KO
humann_regroup_table \
--input sample_genefamilies.tsv \ # 输入:基因家族丰度
--output sample_ko.tsv \ # 输出:KO丰度
--groups uniref90_ko # 分组方式:按KO号
# ---- Step 4: 标准化 ----
# CPM标准化(Copies Per Million,每百万拷贝数)
humann_renorm_table \
--input sample_ko.tsv \ # 输入
--output sample_ko_cpm.tsv \ # 输出
--units cpm # 标准化单位
# ---- Step 5: 合并多样本 ----
humann_join_tables \
--input humann3_output/ \ # 输入目录(包含所有样本结果)
--output merged_ko.tsv # 合并后的KO丰度表
3.3 dbCAN3(CAZy注释专用工具)¶
# ============================================================
# dbCAN3 (run_dbcan): CAZy碳水化合物活性酶注释
# 整合三种方法:HMMER + DIAMOND + eCAMI
# ============================================================
# ---- Step 1: 下载dbCAN数据库 ----
# 下载HMM数据库、DIAMOND数据库等
dbcan_build --cpus 8 --db-dir /path/to/dbcan_db/
# ---- Step 2: 运行CAZy注释 ----
run_dbcan \
proteins.faa \ # 输入:蛋白质序列(FASTA)
protein \ # 输入类型:protein(蛋白序列)
--db_dir /path/to/dbcan_db/ \ # dbCAN数据库路径
--out_dir dbcan_output/ \ # 输出目录
--dia_cpu 8 \ # DIAMOND使用的CPU数
--hmm_cpu 8 \ # HMMER使用的CPU数
--tf_cpu 8 # eCAMI使用的CPU数
# ---- 输出文件 ----
# overview.txt ← 汇总结果(最重要)
# 包含三种方法的结果,推荐至少2种方法同时注释到才可靠
# hmmer.out ← HMMER结果
# diamond.out ← DIAMOND结果
# eCAMI.out ← 深度学习方法结果
3.4 ABRicate(快速耐药/毒力基因注释)¶
# ============================================================
# ABRicate: 快速注释耐药基因、毒力因子等
# 支持多种数据库:CARD, ResFinder, VFDB, NCBI等
# ============================================================
# ---- 查看可用数据库 ----
abricate --list # 列出所有可用数据库
# ---- 耐药基因注释(使用CARD数据库) ----
abricate \
--db card \ # 数据库:card(耐药基因)
--minid 80 \ # 最低序列一致性:80%
--mincov 80 \ # 最低覆盖度:80%
--threads 8 \ # 线程数
contigs.fasta \ # 输入:组装序列
> abricate_card_results.tsv # 输出:TSV格式结果
# ---- 毒力因子注释(使用VFDB数据库) ----
abricate \
--db vfdb \ # 数据库:vfdb(毒力因子)
--minid 70 \ # 最低一致性:70%
--mincov 70 \ # 最低覆盖度:70%
contigs.fasta \
> abricate_vfdb_results.tsv
# ---- 多样本结果汇总 ----
abricate --summary \
sample1_card.tsv \ # 样本1结果
sample2_card.tsv \ # 样本2结果
sample3_card.tsv \ # 样本3结果
> summary_card.tsv # 汇总矩阵
# ---- 更新数据库 ----
abricate-get_db --db card --force # 强制更新CARD数据库
3.5 RGI(Resistance Gene Identifier,CARD官方工具)¶
# ============================================================
# RGI: CARD数据库官方耐药基因注释工具
# 比ABRicate更详细,可注释突变型耐药
# ============================================================
# ---- 加载CARD数据库 ----
rgi load \
--card_json /path/to/card.json \ # CARD数据库JSON文件
--local # 加载到本地
# ---- 运行注释 ----
rgi main \
--input_sequence contigs.fasta \ # 输入:组装序列或蛋白序列
--output_file rgi_results \ # 输出文件前缀
--input_type contig \ # 输入类型:contig / protein / read
--local \ # 使用本地数据库
--clean \ # 清理临时文件
--num_threads 8 # 线程数
# ---- 输出解读 ----
# rgi_results.txt 关键列:
# Best_Hit_ARO 最佳匹配的ARO编号(抗性基因本体论)
# Drug Class 耐药的药物类别
# Resistance Mechanism 耐药机制
# AMR Gene Family 耐药基因家族
3.6 KofamScan(KEGG官方KO注释工具)¶
# ============================================================
# KofamScan: 基于KOfam HMM的KEGG KO注释
# KEGG官方推荐,准确性高于BLAST方法
# ============================================================
# ---- 下载KOfam数据库 ----
wget ftp://ftp.genome.jp/pub/db/kofam/ko_list.gz
wget ftp://ftp.genome.jp/pub/db/kofam/profiles.tar.gz
gunzip ko_list.gz
tar xzf profiles.tar.gz
# ---- 运行注释 ----
exec_annotation \
-f detail-tsv \ # 输出格式:详细TSV
-o kofamscan_results.tsv \ # 输出文件
--cpu 16 \ # CPU线程数
--ko-list /path/to/ko_list \ # KO列表文件
--profile /path/to/profiles/ \ # HMM profile目录
--tmp-dir /tmp/kofamscan/ \ # 临时目录
proteins.faa # 输入:蛋白质序列
# ---- 输出说明 ----
# 带 * 号的行表示该注释通过了阈值,可信度高
# 列:gene_name | KO | threshold | score | E-value | definition
4. 面试常问点¶
★ Q1: KEGG的层级结构是怎样的?KO号是什么?¶
参考答案:
KEGG数据库有三个层级结构。Level 1是最大的功能分类,比如Metabolism代谢、Genetic Information Processing遗传信息处理等共7大类。Level 2是亚类,比如Carbohydrate metabolism碳水化合物代谢等约50类。Level 3是具体的代谢通路,比如ko00010糖酵解、ko00020 TCA循环等约500条通路。
KO号就是KEGG Orthology编号,代表一个直系同源基因的功能单元,格式是K加5位数字,比如K00001。KO号是KEGG注释的核心枢纽,一个KO号可以同时关联到多个pathway和module。
在我们百迈客做宏基因组项目时,通常用eggNOG-mapper注释得到KO号,然后把KO号映射到KEGG pathway上,做不同样本组间的通路富集分析,看微生物群落在功能上有什么差异。
★ Q2: CAZy数据库中GH/GT/PL分别代表什么?¶
参考答案:
CAZy数据库将碳水化合物活性酶分为六大家族:
- GH(Glycoside Hydrolases,糖苷水解酶):水解糖苷键,是最大也最多样的家族。比如GH13家族是淀粉酶,GH5包含纤维素酶。
- GT(Glycosyl Transferases,糖基转移酶):催化糖基团的转移反应。
- PL(Polysaccharide Lyases,多糖裂解酶):通过消除反应(非水解)裂解多糖。
- 另外还有CE(碳水化合物酯酶)、AA(辅助活性酶,做氧化还原反应辅助降解)和CBM(碳水化合物结合模块,只结合底物不催化)。
在宏基因组中,CAZy注释可以揭示微生物群落降解不同碳水化合物的能力。我们通常用dbCAN3工具做注释,它整合了HMMER、DIAMOND和eCAMI三种方法,推荐至少两种方法同时注释到才认为结果可靠。
★ Q3: 怎么做功能注释?你用什么工具?¶
参考答案:
做功能注释一般分几步:
- 基因预测:先用Prodigal或MetaGeneMark从组装的contigs中预测ORF(开放阅读框),得到蛋白序列。
- 综合注释:用eggNOG-mapper做综合注释,一次运行可以同时得到COG分类、GO注释、KEGG KO号和Pfam结构域。
- 专项注释:根据项目需求用专门工具,比如CAZy注释用dbCAN3,耐药基因用ABRicate或RGI,毒力因子用ABRicate调VFDB数据库。
在百迈客做宏基因组项目时,我主要用eggNOG-mapper做综合功能注释,因为它一个工具就能整合多个数据库的结果,效率很高。对于特殊需求(比如碳水化合物降解、耐药基因),再用专门的工具做针对性注释。
★ Q4: 如何解读KEGG pathway的富集结果?¶
参考答案:
KEGG pathway富集分析是看某些功能通路在实验组和对照组之间是否有显著差异。解读时我主要关注:
- 统计显著性:看p值或校正后的q值(FDR),一般取q < 0.05作为阈值。
- 富集方向:看是上调富集还是下调富集,即该通路在哪个组中基因/KO丰度更高。
- 生物学意义:不能只看p值,要结合研究背景解读。比如土壤宏基因组中Nitrogen metabolism(氮代谢)通路富集,要看具体是哪些KO富集了,是硝化相关还是反硝化相关。
- 通路图可视化:可以把差异显著的KO标注到KEGG pathway图上,看差异基因在通路中的位置关系。
在百迈客做项目时,我们通常用R包(如clusterProfiler)做KEGG富集分析,然后用气泡图或柱状图展示top20富集通路,让客户直观看到功能差异。
★ Q5: COG功能分类的字母代表什么意思?¶
参考答案:
COG功能分类用26个字母代表不同的功能类别,分为四大类:
- 信息存储与处理:比如J(翻译和核糖体)、K(转录)、L(复制和修复)。
- 细胞过程和信号传导:比如T(信号转导)、M(细胞壁/膜合成)、V(防御机制)。
- 代谢:比如C(能量代谢)、G(碳水化合物代谢)、E(氨基酸代谢)、I(脂质代谢)。
- 功能不明:R(一般功能预测)和S(功能未知)。
在宏基因组分析中,用COG注释结果做柱状图,可以直观看到微生物群落的功能分布。通常代谢类(C/G/E/I等)占比最高,因为微生物最基本的活动就是物质代谢。
★ Q6: 耐药基因分析用什么数据库和工具?¶
参考答案:
耐药基因分析常用两个数据库:
- CARD(Comprehensive Antibiotic Resistance Database):最全面的耐药基因数据库,包含获得性耐药基因和突变型耐药。官方工具是RGI(Resistance Gene Identifier),可以注释出具体的耐药机制(如外排泵、靶点修饰、抗生素灭活等)和对应的药物类别。
- ResFinder:偏重获得性耐药基因,可以预测耐药表型。
工具方面: - ABRicate是最方便的快速注释工具,支持CARD、ResFinder、NCBI等多个数据库,一行命令就能出结果。 - RGI是CARD官方工具,更详细,能区分perfect hit、strict hit和loose hit。
在百迈客做细菌基因组项目时,如果客户需要耐药分析,我们一般用ABRicate快速扫描,重要的再用RGI做详细注释。
5. 易错/易混淆点¶
5.1 KEGG的KO vs Pathway vs Module¶
| 概念 | 含义 | 关系 | 类比 |
|---|---|---|---|
| KO | 单个基因的功能单元 | 最小单位 | 一块砖 |
| Module | 通路中的功能子单元 | 由多个KO组成 | 一面墙 |
| Pathway | 完整代谢通路 | 由多个Module/KO组成 | 一栋房子 |
KO (K00001) → Module (M00001) → Pathway (ko00010)
基因级别 模块级别 通路级别
易错点:面试时被问"你注释到了哪些通路",不要只说KO号,要说清楚是映射到了哪条pathway。
5.2 eggNOG-mapper vs DIAMOND blastp 直接注释¶
| 对比项 | eggNOG-mapper | DIAMOND blastp + KEGG |
|---|---|---|
| 注释方法 | 先找直系同源组,再转移注释 | 直接序列比对 |
| 数据库 | eggNOG5(整合多库) | KEGG蛋白数据库 |
| 输出内容 | COG + GO + KEGG + Pfam + 描述 | 仅KEGG相关 |
| 准确性 | 基于直系同源关系,更准确 | 基于序列相似性,可能有假阳性 |
| 速度 | 较慢但全面 | 快速 |
| 推荐 | 首选,一次多库注释 | 需要KEGG专项且追求速度时 |
核心区别:eggNOG-mapper是"找到同源组→转移注释",DIAMOND是"直接BLAST到数据库序列"。前者利用了进化关系,更可靠。
5.3 CAZy vs dbCAN¶
| CAZy | dbCAN | |
|---|---|---|
| 本质 | 数据库(Database) | 注释工具/平台(Tool) |
| 内容 | 碳水化合物活性酶的分类和信息 | CAZy的自动化注释流程 |
| 使用方式 | 网站浏览、DIAMOND比对 | run_dbcan命令行工具 |
| 关系 | 数据来源 | 基于CAZy数据构建的HMM |
类比:CAZy就像一本字典,dbCAN就像一个查字典的App。
5.4 GO的三个维度¶
Gene Ontology
/ | \
BP MF CC
生物过程 分子功能 细胞组分
"做什么" "怎么做" "在哪里"
示例(一个转录因子):
BP: transcription regulation(转录调控) → 它参与的过程
MF: DNA binding(DNA结合活性) → 它的分子能力
CC: nucleus(细胞核) → 它在细胞的位置
易错点:GO三个维度是独立的,一个基因可以同时有多个BP、MF和CC注释,不要以为一个基因只有一个GO term。
5.5 KEGG注释的版本问题¶
| 注意事项 | 说明 |
|---|---|
| KEGG不完全免费 | 商业使用需要付费许可 |
| KO号可能更新 | 新版本可能合并/拆分/废弃KO号 |
| 不同工具结果可能不同 | eggNOG-mapper和KofamScan对同一基因的KO注释可能不完全一致 |
| 建议 | 论文中注明使用的KEGG版本和注释工具版本 |
6. 功能注释在宏基因组中的完整流程图¶
原始reads
↓
质控(fastp/Trimmomatic)
↓
去宿主(Bowtie2 vs 宿主基因组)
↓
组装(MEGAHIT/SPAdes)
↓
基因预测(Prodigal/MetaGeneMark)
↓ 得到蛋白序列
├─→ eggNOG-mapper → COG/GO/KEGG/Pfam 综合注释
├─→ KofamScan → KEGG KO精准注释
├─→ dbCAN3 → CAZy碳水化合物活性酶注释
├─→ ABRicate/RGI → 耐药基因注释
├─→ ABRicate → 毒力因子注释
└─→ InterProScan → Pfam/GO/IPR综合注释
↓
丰度定量(reads mapping回基因 → TPM/RPKM)
↓
差异分析(DESeq2/LEfSe)
↓
富集分析(KEGG通路富集/GO富集)
7. 数据库访问与版本信息速查¶
| 数据库 | 官方网址 | 更新频率 | 备注 |
|---|---|---|---|
| KEGG | https://www.kegg.jp | 月更新 | 商业需许可 |
| eggNOG | http://eggnog5.embl.de | 大版本更新 | 免费 |
| CAZy | http://www.cazy.org | 持续更新 | 免费浏览 |
| dbCAN | https://bcb.unl.edu/dbCAN2 | 年更新 | 免费 |
| CARD | https://card.mcmaster.ca | 季度更新 | 免费 |
| VFDB | http://www.mgc.ac.cn/VFs | 持续更新 | 免费 |
| GO | http://geneontology.org | 月更新 | 免费 |
| Pfam/InterPro | https://www.ebi.ac.uk/interpro | 年更新 | 免费,Pfam已整合 |
| MEROPS | https://www.ebi.ac.uk/merops | 不定期 | 免费 |
8. 面试加分点¶
8.1 百迈客实习中的功能注释经验总结¶
在百迈客做宏基因组项目时,功能注释是标准流程的一部分: 1. 基因预测后,先用eggNOG-mapper做综合注释,一次跑就能得到COG/KEGG/GO/Pfam全套结果 2. 根据客户需求,追加专项注释(CAZy/耐药/毒力) 3. 统计KO丰度表,做组间差异分析和KEGG通路富集 4. 出图:COG功能分布柱状图、KEGG通路气泡图、CAZy家族热图等
8.2 功能注释的局限性¶
- 数据库不完整:很多基因(尤其是未培养微生物的)没有功能注释
- 功能预测 ≠ 功能验证:注释只是预测,不代表该功能真正在表达
- 不同数据库结果可能不一致:同一基因在不同数据库的注释可能有出入
- 宏转录组可以补充:如果要看"实际在做什么"而非"有能力做什么",需要宏转录组