Mash是使用最小哈希(MinHash)算法快速估计基因组或宏基因组之间的遗传距离
一、软件下载和安装
安装的方式有两种可选
(一)直接在github官网下载最新版本的源码,解压后即可直接使用
wget https://github.com/marbl/Mash/releases/download/v2.3/mash-Linux64-v2.3.tar
tar -xvf mash-Linux64-v2.3.tar
(二)也可选用conda进行安装(建议创建独立的环境)
conda create -n mash
source activate ~/anaconda3/envs/mash
conda install bioconda::mash
二、计算基因组之间的遗传距离
(一)首先,使用mash sketch命令得到每个基因组的*.msh结尾文件
#将每个基因组的名字前缀放在GenomeName.list文件中
for GenomeName in $(cat GenomeName.list)
do
mash sketch ${GenomeName}_genomic.fna
done
(二) 其次,使用mash dist命令计算两两基因组之间的遗传距离,得到*.dist结尾文件
for GenomeName1 in $(cat GenomeName.list)
do
for GenomeName2 in $(cat GenomeName.list)
do
mash dist ${GenomeName1}_genomic.fna.msh ${GenomeName2}_genomic.fna.msh > ${GenomeName1}_${GenomeName2}.dist
done
done
(三)将所有基因组之间的遗传距离矩阵结果合并起来
cat *.dist >> Merge.dist.txt
sed -i 's/_genomic.fna//g' Merge.dist.txt
得到示例结果如下:
genome1 genome3 0 0 1000/1000
genome2 genome3 0.0222766 0 456/1000
- 第一列代表参考基因组名字(Reference-ID)
- 第二列代表query基因组名字(Query-ID)
- 第三列代表mash距离(Mash-distance)
- 第四列代表P值(P-value)
- 第五列代表匹配的hashes(Matching-hashes)
• 参考文献
Mash: fast genome and metagenome distance estimation using MinHash. Ondov BD, Treangen TJ, Melsted P, Mallonee AB, Bergman NH, Koren S, Phillippy AM. Genome Biol. 2016 Jun 20;17(1):132. doi: 10.1186/s13059-016-0997-x.Mash Screen: high-throughput sequence containment estimation for genome discovery. Ondov BD, Starrett GJ, Sappington A, Kostic A, Koren S, Buck CB, Phillippy AM. Genome Biol. 2019 Nov 5;20(1):232. doi: 10.1186/s13059-019-1841-x
• 易科源生物科技,致力于提供个性化高质量多组学科研服务,为您的科研助力!
• TB店铺:易科源生物科技