eggNOG进行本地化注释

1. 找到 eggnog-mapper 的默认数据库目录

运行以下命令查看 eggnog-mapper 数据库的默认位置:

emapper.py --data_dir

这会输出当前使用的数据库目录(例如 /path/to/eggnog-mapper/data)。

2. 将手动下载的数据库移动到默认位置

将您的 HMM 数据库文件移动到刚才查询的 data 目录下。假设默认数据库路径是 /path/to/eggnog-mapper/data,运行以下命令:

mv EggNOG_Eukaryota.hmm* /path/to/eggnog-mapper/data/

确保数据库和索引文件都在同一目录下。

3. 使用 --database 参数指定数据库

在运行 emapper.py 时,使用 --database 参数指定手动下载的数据库。例如:

emapper.py -i input_proteins.fasta --output results --database EggNOG_Eukaryota.hmm --cpu 8

  • --database EggNOG_Eukaryota.hmm:指定使用的 HMM 数据库文件。
  • --cpu 8:设置使用的 CPU 核心数。

4. 数据库位置的灵活配置

如果您不想将数据库文件放到默认目录中,可以使用 --data_dir 参数临时指定数据库文件所在的目录。例如:

emapper.py -i input_proteins.fasta --output results --data_dir /path/to/EggNOG/ --database EggNOG_Eukaryota.hmm --cpu 8

  • --data_dir /path/to/EggNOG/:指定数据库存放目录。
  • --database EggNOG_Eukaryota.hmm:使用刚刚下载的数据库。

5. 注意事项

  • 文件完整性:确保 EggNOG_Eukaryota.hmm 和 .h3f/.h3i/.h3m/.h3p 索引文件都在同一目录下,否则 hmmsearch 或 emapper.py 会报错。
  • 内存和硬盘要求:您的数据库文件很大(~40 GB),运行时可能需要较高的内存(推荐 >=64 GB RAM)。

 

##使用自己下载的hmm数据库进行eggNOG注释,指定特定目录

根据提示,emapper.py 需要的 DIAMOND 数据库 (eggnog_proteins.dmnd) 不存在。这是 eggnog-mapper 默认需要的主要比对数据库之一。虽然您已经手动下载了 HMM 数据库,但 eggnog-mapper 同时需要其他支持文件(包括 DIAMOND 数据库)。

解决方法

1. 下载完整的 eggnog-mapper 数据库

使用 eggnog-mapper 提供的脚本下载完整的官方数据库:

/opt/biosoft/eggnog-mapper-2.1.11/download_eggnog_data.py --data_dir /opt/biosoft/bioinfomatics_databases/EggNOG

这将下载所需的所有数据库文件,包括:

  • DIAMOND 数据库 (eggnog_proteins.dmnd)。
  • HMM 数据库等支持文件。

2. 使用手动下载的 HMM 数据库

如果您希望使用手动下载的 HMM 数据库,需要确保程序知道如何跳过 DIAMOND 数据库的需求,您可以尝试以下方法:

  • 只使用 HMM 数据库运行比对: 使用 --qtype hmm 和 --dbtype hmmdb 参数指定只使用 HMM 模式,例如:

    /opt/biosoft/eggnog-mapper-2.1.11/emapper.py \ -i input_proteins.fasta \ --output results \ --data_dir /opt/biosoft/bioinfomatics_databases/EggNOG \ --database EggNOG_Eukaryota.hmm \ --qtype hmm \ --dbtype hmmdb \ --cpu 8