参考网址:https://github.com/ParBLiSS/FastANI
需要python3.6版本
conda环境版本过高需要降低版本
直接创建一个python3.6的环境
conda create -n py36 python=3.6
fastANI安装
conda install -c bioconda fastani
conda install -c "bioconda/label/cf201901" fastani
fastANI命令详解
fastANI -h #帮助文档
运行
fastANI -q genome1.fa -r genome2.fa -o output.txt # 单个基因组之间相互比对
fastANI -q genome1.fa --rl genome_list.txt -o output.txt# 多个基因组之间相互比对
参数
参数:
-q, --query:查询基因组核苷酸序列,可以试fasta/fastq及其gzip压缩文件
-r, --ref:参考基因组核苷酸序列,可以试fasta/fastq及其gzip压缩文件
–rl, --refList:包含参考基因组列表的文件,从而允许多个参考基因组
–ql, --queryList:包含查询基因组列表的文件,从而允许多个查询基因组
-t, --threads:程序运行所使用的核数,默认为1
-k, --kmer:比对的kmer大小,不能大于16,默认为16
–fragLen:片段长度,默认为3000
–minFrag:最短匹配的片段,默认为50
–visualize:输出比对图像,只适用于一对一比对,默认关闭
–matrix:输出ANI值作为下三角矩阵,适用于多对多比对,默认关闭
-o, --output:输出文件名
控制台输出的日志
$ ./fastANI -q data/Shigella_flexneri_2a_01.fna -r data/Escherichia_coli_str_K12_MG1655.fna -o fastani.out
>>>>>>>>>>>>>>>>>>
Reference = [data/Escherichia_coli_str_K12_MG1655.fna]
Query = [data/Shigella_flexneri_2a_01.fna]
Kmer size = 16
Fragment length = 3000
Threads = 1
ANI output file = fastani.out
>>>>>>>>>>>>>>>>>>
....
....
INFO, skch::main, Time spent post mapping : 0.00310319 sec
输出保存在文件中,上面使用该选项提供
fastani.out-o
$ cat fastani.out
data/Shigella_flexneri_2a_01.fna data/Escherichia_coli_str_K12_MG1655.fna 97.7507 1303 1608
上述输出意味着弗氏链球菌和大肠杆菌基因组之间的ANI估计值为97.7507。在来自弗氏链球菌基因组的总共1608个序列片段中,有1303个被排列为直系同源匹配
可视化保守区域黑白两个基因组
FastANI支持两个基因组之间计算的倒数映射的可视化。 如上所述,获取此可视化需要使用 FastANI 进行一对一比较,但应提供其他标志。 此标志强制 FastANI 输出一个映射文件(带扩展名),其中包含所有倒数映射的信息。 最后,存储库中提供了一个 R 脚本,该脚本使用 genoPlotR 包来绘制这些映射。 在这里,我们展示了使用两个基因组的示例运行:五日巴尔通体(GenBank:CP003784.1)和汉赛巴尔通体(NCBI参考序列:NC_005956.1)。 --visualize
.visual
$ ./fastANI -q B_quintana.fna -r B_henselae.fna --visualize -o fastani.out
$ Rscript scripts/visualize.R B_quintana.fna B_henselae.fna fastani.out.visual