当前位置:首页>Linux>Linux系统调用RGI

Linux系统调用RGI

  • 2026-10-11 05:36:21
Linux系统调用RGI

RGI程序及其在线交互用法请参考CARD数据库简介及使用方法。本文重点介绍如何在Linux系统中调用RGI程序比对查询序列和CARD数据库参考序列,从而预测抗生素抗性基因ARGs相关信息。

一、安装RGI

推荐使用Conda或Docker工具安装RGI,有助于依赖项正确安装及便捷管理。

(1) Conda安装方法

## Conda安装RGI# 新建虚拟环境conda create -n rgi# 激活虚拟环境conda activate rgi
# conda搜索RGI程序可用版本,mamba工具表现或许比conda更佳conda search rgi --channel bioconda --channel conda-forge --channel defaults
# conda安装RGI指定版本,如最新版本v6.0.3# 安装失败是非常常见的,要注意检查是否已添加必要的镜像通道,特别是bioconda、conda-forge和defaults。如果添加必要的镜像通道后仍然无法完成程序包搜集及编译,则过数个小时再次测试。如果完成程序包搜集及编译但由于少数几个程序包或依赖项下载中断而失败,则重复执行安装命令即可。如果重复安装测试仍然失败,可以考虑删除整个虚拟环境从头再来!conda install rgi=6.0.3# 检查RGI安装情况及查看RGI帮助文档rgi --help# 查看RGI子命令帮助菜单rgi load -h
# conda默认安装RGI v3.2.1,此处仅作演示# 建议一个虚拟环境下仅安装一个程序版本,避免依赖冲突conda install rgi --channel bioconda# 检查RGI安装情况rgi --help

(2) Docker/Singularity安装方法

## 由Dockerhub(Dockerfile构建)或biocontainers(Conda构建)拉取Docker容器# Docker方法1docker pull finlaymaguire/rgi:latest# Docker方法2docker pull quay.io/biocontainers/rgi:5.1.1--py_0# Docker运行docker run -v $PWD:/data finlaymaguire/rgi rgi -hdocker run -v $PWD:/data quay.io/biocontainers/rgi:5.1.1--py_0 rgi -h

二、RGI数据库配置

(1) CARD数据库配置

# 由CARD下载最新AMR参考数据wget -c https://card.mcmaster.ca/latest/data# 解压缩数据文件tar -xvf data ./card.json# 加载至本地工作目录rgi load --card_json card.json --local# 加载至系统范围rgi load --card_json card.json# 查看本地工作目录库版本rgi database --version --local# 查看系统库版本rgi database --version

(2) CARD & WildCARD数据库配置

# 清理以往加载# 特别注意,清除所有rgi/目录所有文件rgi clean --local# 由CARD下载参考数据CARD Data v4.0.0,最新版本wget -c https://card.mcmaster.ca/latest/data# 解压缩数据文件tar -xvf data ./card.json
# 下载WildCARD参考数据wget -c -O wildcard_data.tar.bz2 https://card.mcmaster.ca/latest/variants# 新建目录wildcardmkdir -p wildcard# 解压缩WildCARD数据文件至新目录wildcardtar -xjf wildcard_data.tar.bz2 -C wildcardgunzip wildcard/*.gz# 创建annotation注释文件# 注意,-v指定CARD和WildCARD数据库版本,本示例是CARD v3.2.9和WildCARD v4.0.2,可在即时CARD官网Download板块(https://card.mcmaster.ca/download)查询rgi card_annotation -i card.json > card_annotation.log 2>&1rgi wildcard_annotation -i wildcard --card_json card.json -v 4.0.2 > wildcard_annotation.log 2>&1
# 将所有数据加载至RGIrgi load \--card_json card.json \--debug --local \--card_annotation card_database_v4.0.0.fasta \--card_annotation_all_models card_database_v4.0.0_all.fasta \--wildcard_annotation wildcard_database_v4.0.2.fasta \--wildcard_annotation_all_models wildcard_database_v4.0.2_all.fasta \--wildcard_index wildcard/index-for-model-sequences.txt \--wildcard_version 4.0.2 \--amr_kmers wildcard/all_amr_61mers.txt \--kmer_database wildcard/61_kmer_db.json \--kmer_size 61
# 加载至本地工作目录rgi load --card_json card.json --local# 加载至系统范围rgi load --card_json card.json# 查看本地工作目录库版本rgi database --version --local# 查看系统库版本rgi database --version

三、应用RGI main预测核酸/蛋白质序列

(1) 扩增子测序数据

应用RGI main预测核酸/蛋白质序列。老版RGI默认所有标识95%或更高的松散匹配项自动列为“严格(Strict)”,仅能靠--exclude_nudge选项抑制此行为。新版RGI已禁用上述默认行为及--exclude_nudge选项,仅可以使用--include_nudge选项将标识95%或更高的松散匹配项(微移)作为严格匹配项列出。

## RGI main应用示例,仅供参考# 将测序仪下机数据FASTQ格式文件转化为FASTA格式文件awk '{if(NR%4 == 1){print ">" substr($0, 2)}}{if(NR%4 == 2){print}}' input.fastq > input.fasta# 按需求修改文件格式,序列“@”开头替换为“>”开头# sed -i 's/@/>/g' ~/path/to/input.fasta# 执行待分析核酸序列,且在此目录下输出结果rgi main \--input_sequence input.fasta \--output_file output_file \--local --clean
# RGI main参数解读:  -h, --help 显示帮助文档并退出;  -i, --input_sequence 指定输入FASTA或gzip格式序列;  -o, --output_file 指定输出文件夹或文件;  -t {contig, protein}, --input_type {contig, protein} 指定数据输入类型,默认contig;  -a {DIAMOND, BLAST}, --alignment_tool {DIAMOND, BLAST} 指定比对工具,默认为BLAST;  -n, --num_threads设置线程,BLAST搜索使用的CPU线程数,默认16;  --include_loose 除Perfect和Strict算法外,还包括Loose算法比对结果,默认False;  --include_nudge 包含所有算法的比对结果,默认False;  --local 使用本地库,默认使用数据库的可执行目录;  --clean 删除临时文件,默认False.
## 输出文件output_file.txt是一个空表,代表输入序列无相关ARGs,行标题解释如下:  ORF_ID指定 开放阅读框架标识符(RGI内部);  Contig指定 输入文件中的序列号;  Start指定 ORF起始位置;  Stop指定 ORF结束位置;  Orientation指定 ORF链;  Cut_Off指定 RGI 算法,包括Perfect、Strict和Loose;  Pass_Bitscore指定 不保留低于该比对分值的匹配项;  Best_Hit_Bitscore指定 与CARD参考库最高匹配的比对分值;  Best_Hit_ARO指定 CARD中的最高匹配ARO项目;  Best_Identities指定 与CARD中的最高匹配的同一性百分比;  ARO ARO指定 匹配到的CARD参考序列Accession编号;  Model_type指定 CARD检测模型类型;  SNPs_in_Best_Hit_ARO指定 在CARD中最高匹配的ARO项目中观察到的突变;  Other_SNPs指定 以模型ID指示的其他匹配项的ARO项目观察到的突变;  Drug Class指定 抗生素药物类型;  Resistance Mechanism指定 抗性机制;  AMR Gene Family指定 基因家族信息;  Predicted_DNA指定 ORF预测核苷酸序列;  Predicted_Protein指定 ORF预测的蛋白质序列;  CARD_Protein_Sequence指定 CARD中top hit的蛋白质序列;  Percentage Length of Reference Sequence指定 ORF蛋白长度/CARD参考蛋白长度;  ID HSP指定 标识符(RGI内部);  Model_id指定 CARD检测型号id;  Note指定 其他注意事项及原因;  Hit_Start指定 比对开始位置;  Hit_End指定 比对结束位置;  Antibiotic指定 抗生素抗性基因类型;  Nudged, 默认False.

(2) 宏基因组测序数据

## 应用RGI bwt预测宏基因组测序数据rgi bwt \--read_one /path/to/R1.fastq.gz \--read_two /path/to/R2.fastq.gz \--output_file output_prefix \--local --clean# RGI bwt参数解读:  -h, --help 显示帮助文档并退出;  -1 READ_ONE, --read_one READ_ONE 指定导入的正向序列R1;  -2 READ_TWO, --read_two READ_TWO指定导入的正向序列R2;  -a {kma,bowtie2,bwa}, --aligner {kma,bowtie2,bwa}指定比对工具,默认kma;  -n, --threads设置CPU线程,默认16;  -o, --output_file 指定输出文件;  --debug 指定调试模式,默认False;  --clean 指定删除临时文件,默认False;  --local 指定使用本地库,默认使用可执行目录数据库;  --include_wildcard 指定包含wildcard数据库,默认False.

(3) 应用RGI heatmap绘制热图

# 查看RGI热图工具帮助文档rgi heatmap -h
## 绘制热图示例演示rgi heatmap \--input /path/to/rgi_results_json_files_directory \--output /path/to/output_file# RGI heatmap参数解读:  -h, --help 显示帮助文档并退出;  -i INPUT,指定json文件所在工作目录;  -cat {drug_class, resistance_mechanism, gene_family}, --category {drug_class, resistance_mechanism, gene_family}指定基于某种类型方法整理抗性基因;  -f, --frequency指定以抗生素耐药性情况表示样本;  -o, --output_file指定输出文件;  -clus {samples, genes, both}, --cluster {samples, genes, both}指定使用SciPy聚类算法对行或列执行聚类分析;  -d {plain, fill, text}, -display {plain, fill, text}指定显示选项;  --debug指定调试模式,默认False.

最新文章

随机文章