当前位置: 首页 > news >正文

Melon: 基于marker基因的三代宏基因组分类和定量软件


基于标志基因的分类方法在理论上(如生物学意义)和实际应用中(如计算资源消耗)均具有优势。除了我们了解的可能的假阴性,三代宏基因组的类似分析工具比较欠缺,于是作者就开发了一个。
来自港大张彤团队去年的力作,得知这个软件可能最早是在团队的主页,但是真正感兴趣是看到NM的三代宏基因组扩展陆地微生物的研究中使用了这个软件。虽然文章发表的期刊不是特别棒,但看到最近两个月依然在更新,想要尝试下分析的效果啦!

软件安装和数据库准备

软件名就是取自文章标题的缩写的前几个字母,这也是一般软件起名的通用做法啦,瓜,名字还挺有意思的!安装就是大家还主流使用的conda啦,新建个环境,然后激活。数据库准备,还是挺耗费时间和空间的,不过一般基于marker基因的宏基因组数据库,体积小很多啦!下载后使用三代常用的minimap建立索引。
如果宿主含量特别高,并且想要估计原核生物的平均基因组大小,需要通过适当的比对或启用简单的预过滤模块来去除它们。如kraken数据库的不同版本:PlusPF,标准+原生+真菌,PlusPFP,多了个植物,可以使用限制数据库大小为8G的等小体积版本。

# 安装
conda create -n melon -c conda-forge -c bioconda melon
conda activate melon
# 数据库,想要用的新的库,用0.3版本
## NCBI 3.2G
wget -qN --show-progress https://zenodo.org/records/15231351/files/database.tar.gz
tar -zxvf database.tar.gz
## GTDB 
# wget -qN --show-progress https://zenodo.org/records/15231379/files/database.tar.gz
# tar -zxvf database.tar.gz
# 建索引
## if you encounter memory issue please consider manually lowering cpu_count or simply set cpu_count=1
cpu_count=$(python -c 'import os; print(os.cpu_count())')diamond makedb --in database/prot.fa --db database/prot --quiet
ls database/nucl.*.fa | sort | xargs -P $cpu_count -I {} bash -c 'filename=${1%.fa*};filename=${filename##*/};minimap2 -x map-ont -d database/$filename.mmi ${1} 2> /dev/null;echo "Indexed <database/$filename.fa>.";' - {}## remove unnecessary files to save space
rm -rf database/*.fa
# kraken https://benlangmead.github.io/aws-indexes/k2
mkdir database_kraken
wget -q --show-progress https://genome-idx.s3.amazonaws.com/kraken/k2_pluspf_08gb_20230605.tar.gz -O database_kraken/db.tar.gz
tar -zxvf database_kraken/db.tar.gz -C database_kraken## remove temporary files to save space
rm -rf database_kraken/db.tar.gz
melon -h

软件的使用说明相对简洁,并没有提供详细的说明文档,只有参数的提示。可以看到必须参数就是数据库-d和输出文件夹-o,输入支持fasta或fastq,以及压缩后的,常规操作习惯啦。
可选参数有-t是线程数,默认竟然是256,-k是指定kraken数据库作过滤。–skip-profile跳过丰度分析,只分析基因组拷贝数,–skip-clean保留中间文件。
然后就是blast/diamond的一些过滤参数啦,-m指定命中候选数量,-e就是evalue啦,-i是相似度,-s是报告比对结果的最小目标覆盖百分比。
接着是minimap2的过滤参数,-n是控制每个查询序列最多输出多少个次级比对。-p是控制是否输出次级比对(secondary mappings),依据其得分与主比对(primary mapping)的相对比例。
其他参数还有-g是一个物种报告其基因组拷贝所需的最少独特标记基因数量。最后就是拟合的两个附加参数,-a 期望最大化算法的终止条件 - 最大迭代次数。-c 期望最大化算法的终止条件 - 精度(ε)。

当一个序列可以在多个位置比对时,除了主比对(primary alignment),Minimap2 还可以输出若干个得分较高的次级比对。这个参数可以限制这些次级比对的数量,以避免输出过多冗余信息

使用

建议使用质控后的序列作为输入,比如ONT常用的质控指标最小质量得分10;最小读取长度1,000 bp(nanoq -q 10 -l 1000)。运行命令是比较简单的,参数也比较少,就指定下数据库和输出就可以啦。

# 如果过滤非原核
melon *.fa -d database -o . -k database_kraken
# 不过滤直接运行的demo
wget -qN --show-progress https://zenodo.org/records/12571849/files/example.fa.gz
melon example.fa.gz -d database -o .

结果有两个,一个是json格式,另一个是tsv,一般咱看tsv啦!从门到属的信息以及应该是taxid,拷贝数,丰度和相似度。

superkingdomphylumclassorderfamilygenusspeciescopyabundanceidentity
2|Bacteria1224|Pseudomonadota1236|Gammaproteobacteria72274|Pseudomonadales135621|Pseudomonadaceae286|Pseudomonas287|Pseudomonasaeruginosa2.1257.727273e-020.9571/0.9473

好啦,就分享到这,期待大家的真实项目使用体会,欢迎交流!

参考

  • Chen, X., Yin, X., Shi, X. et al. Melon: metagenomic long-read-based taxonomic identification and quantification using marker genes. Genome Biol 25, 226 (2024). https://doi.org/10.1186/s13059-024-03363-y
  • https://github.com/xinehc/melon

文章转载自:

http://bvB2GTvl.mgmyt.cn
http://zRTa0NSL.mgmyt.cn
http://y76ciKzE.mgmyt.cn
http://ZDHup4SO.mgmyt.cn
http://g0oP3k3o.mgmyt.cn
http://CFwVBnw4.mgmyt.cn
http://0dQEYaTz.mgmyt.cn
http://jmV5x0M3.mgmyt.cn
http://MS8CNMrm.mgmyt.cn
http://9BJzGHe9.mgmyt.cn
http://PPNCfpuW.mgmyt.cn
http://LaLjCW5E.mgmyt.cn
http://sMTFJgoU.mgmyt.cn
http://yTcY6p62.mgmyt.cn
http://4eHdUchp.mgmyt.cn
http://pKC3lYsD.mgmyt.cn
http://mDdeg0RW.mgmyt.cn
http://CF0s1RQg.mgmyt.cn
http://a5nYDmnz.mgmyt.cn
http://878LSsfV.mgmyt.cn
http://XBobEDuZ.mgmyt.cn
http://Yp5thMUr.mgmyt.cn
http://A2at9Pd5.mgmyt.cn
http://MkC6a5rK.mgmyt.cn
http://xSLRABHJ.mgmyt.cn
http://GP3UJQGE.mgmyt.cn
http://DfelI4UL.mgmyt.cn
http://H6qMtLFg.mgmyt.cn
http://g656hN6L.mgmyt.cn
http://hX6QBRz1.mgmyt.cn
http://www.dtcms.com/a/375642.html

相关文章:

  • 水题记录1.7
  • JVM 执行引擎详解!
  • lua中 string.match返回值
  • 2025-安装集成环境XAMPP
  • 整体设计 之 绪 思维导图引擎 :思维价值链分层评估的 思维引导和提示词导航 之 引 认知系统 之6之 序 认知元架构 之1(豆包助手 之3)
  • 【教学类-07-10】20250909中3班破译电话号码(手写数字版、撕贴版、头像剪贴底纹版、抄写填空版)
  • 【初阶数据结构】算法复杂度
  • PowerBI 的双隐藏,我在QuickBI 里也找到了
  • AI赋能训诂学:解码古籍智能新纪元
  • 微服务雪崩问题与系统性防御方案
  • css3之grid布局
  • git config --global user.name指令报错时的解决方案
  • 三维仿真软件中渲染层面的孔洞优化方法调研
  • Linux学习-ARM汇编指令
  • 微软依旧稳定发挥,Windows 最新更新性能「开倒车」
  • 预录车辆号牌提示系统——车牌检测系统
  • --控制--
  • 明远智睿 H618 核心板:以硬核性能重塑多媒体智能终端新生态
  • FANUC发那科焊接机器人铝材焊接节气
  • 在python中使用mysql的方法
  • DriftingBlues: 4靶场渗透
  • Java基本数据类型
  • Ackley函数:优化算法领域的复杂试金石
  • ubuntu升级失败报错
  • 大数据存储域——Kafka实战经验总结
  • Games101 第五讲 Z-buffer
  • AI批量剪辑软件推荐使用运营大管家-AI短视频剪辑软件,剪辑效果好,过原创视频
  • 服装采购跟单系统的高效管理实践
  • OpenCSG 哈投达成战略合作,加速东北企业AI转型
  • Unity预设保存检测