我需要一种从 3 - 1000 个不同长度的短 (10-20bp) 核苷酸 (“ATCG”) 读数中创建共有序列的方法。
一个简化的例子:
"AGGGGC"
"AGGGC"
"AGGGGGC"
"AGGAGC"
"AGGGGG"
应该产生一致的序列"AGGGGC"
。
我在 BioPython 库中找到了进行多序列比对 (MSA) 的模块,但仅适用于相同长度的序列。我也熟悉(并且已经实现)任意长度的两个序列的 Smith-Waterman 风格对齐。我想一定有一个库或实现结合了这些元素(MSA 不等长),但经过数小时的网络搜索和各种文档都没有找到任何东西。
关于现有模块/库(首选 Python)或我可以合并到执行此操作的管道中的程序的任何建议?
谢谢!