多基因组共线性分析-ntsynt

1.简介

ntsynt是一个用于多个全基因组比对并识别共线块的工具,它的核心思路是通过利用minimizers和graph-based方法来识别基因组间的共线块,核心步骤如下:为每个基因组生成有序的minimizers草图-->筛选出单拷贝的minimizers-->构建初始minimizer图(minimizers作为节点,基因组上相邻的minimizers作为边)-->初始minimizer图优化(移除缠结关系)-->初始共线块识别-->迭代细化(对于初始共线块中不存在的minimizers草图采用更小的minimizers生成minimizer图并简化)-->最终的共线块。
Tips:实测12个1G的基因组跑90min结束;

2.安装

conda create -n ntsynt python=3.10
conda activate ntsynt
conda install -c bioconda -c conda-forge ntsynt intervaltree pybedtools ncls python-igraph gcc meson ninja snakemake samtools seqtk btllib=1.6.2

3.输入文件

usage: ntSynt [-h] [--fastas_list FASTAS_LIST] -d DIVERGENCE [-p PREFIX] [-k K] [-w W] [-t T] [--fpr FPR] [-b BLOCK_SIZE] [--merge MERGE]
              [--w_rounds W_ROUNDS [W_ROUNDS ...]] [--indel INDEL] [-n] [--benchmark] [-f] [--dev] [-v]
              [fastas ...]

ntSynt: Multi-genome synteny detection using minimizer graphs

positional arguments:
  fastas                Input genome fasta files

optional arguments:
  -h, --help            show this help message and exit
  --fastas_list FASTAS_LIST
                        File listing input genome fasta files, one per line
  -d DIVERGENCE, --divergence DIVERGENCE
                        Approx. maximum percent sequence divergence between input genomes (Ex. -d 1 for 1% divergence).
                        This will be used to set --indel, --merge, --w_rounds, --block_size
                        See below for set values - You can also set any of those parameters yourself, which will override these settings.
  -p PREFIX, --prefix PREFIX
                        Prefix for ntSynt output files [ntSynt.k.w]
  -k K                  Minimizer k-mer size [24]
  -w W                  Minimizer window size [1000]
  -t T                  Number of threads [12]
  --fpr FPR             False positive rate for Bloom filter creation [0.025]
  -b BLOCK_SIZE, --block_size BLOCK_SIZE
                        Minimum synteny block size (bp)
  --merge MERGE         Maximum distance between collinear synteny blocks for merging (bp). 
                        Can also specify a multiple of the window size (ex. 3w)
  --w_rounds W_ROUNDS [W_ROUNDS ...]
                        List of decreasing window sizes for synteny block refinement
  --indel INDEL         Threshold for indel detection (bp)
  -n, --dry-run         Print out the commands that will be executed
  --benchmark           Store benchmarks for each step of the ntSynt pipeline
  -f, --force           Run all ntSynt steps, regardless of existing output files
  --dev                 Run in developer mode to retain intermediate files, log verbose output
  -v, --version         show program's version number and exit

运行示例:

ntSynt -d 5 assembly1.fa assembly2.fa assembly3.fa
或者
ntSynt -d 5 --fastas_list fasta_list -t 30

4.输出文件

输出文件是

.synteny_blocks.tsv,每一列信息如下:
1.共线块ID
2.基因组文件名
3.基因组染色体名字
4.基因组起始坐标
5.基因组终止坐标
6.基因组染色体方向
7.在该共线块中比对到的minimizers的数量
8.与上一个共线块不连续的原因

5.共线块的评估

使用analysis_scripts/denovo_synteny_block_stats.py评估

python3 denovo_synteny_block_stats.py -h
usage: denovo_synteny_block_stats.py [-h] --tsv TSV --fai FAI [FAI ...]

Compute de novo stats on synteny blocks

optional arguments:
  -h, --help           show this help message and exit
  --tsv TSV            ntSynt synteny block file
  --fai FAI [FAI ...]  FAI files for the compared genomes

结果文件解析:
第一列是共线块的数量
第二列是在所有基因组中均包含的共线块的数量
第三列是平均共线块覆盖度
第四列是在所有基因组中均包含的平均共线块覆盖度
第五列是共线块的平均值长度(bp)
第六列是共线块的中位值长度(bp)
第七列是所有共线块的总长
第八列是共线块NG50长度(bp)
第九列是共线块N50长度(bp)

6.Tips

6.1 如果超内存,可以通过增加 --fpr值来降低峰值内存;
6.2 如果不知道-d如何设置,可以根据Mash软件的dist功能计算

###下载
wget -c https://github.com/marbl/Mash/releases/download/v2.3/mash-Linux64-v2.3.tar
tar xvf mash-Linux64-v2.3.tar
###使用
mash dist -p 10 A.genome.fa B.genome.fa
###结果
reference-ID  query-ID  distance  p-value  shared-hashes
A.genome.fa  B.genome.fa  0.117785  1.05717e-96  44/1000

6.3 由于--merge, --indel, --block_size and --w_rounds建议根据自己的项目的经验值设置;
6.4 ntSynt-viz可视化方便快捷(刚开发的软件功能不是很齐全,比如修改染色体长度、染色体形状、共线块颜色、突出用户自己感兴趣的区域等都不行),visualization_scripts本软件自带的除了安装麻烦,还不能过滤染色体长度、共线块长度、添加颜色等信息

版权声明:
作者:玉兰
链接:https://www.techfm.club/p/200997.html
来源:TechFM
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>