不同字母表上的多个不对称对齐库

malign的Python项目详细描述


PyPIBuild StatuscodecovCodacy Badge

MALIGN是一个库,用于对 不同的字母表。它允许每个序列都有自己的域, 这反过来又允许使用不对称和稀疏的评分矩阵, 包括间隙,并执行真正的单道多对中, 允许计算k-最佳对齐。虽然是语言方面的 主要用于对齐任何类型的顺序 代表性,特别适合作为通用的 工具,用于在评分上没有预先假设的情况 矩阵。在

安装和使用

该库可以安装为任何标准的Python库 pip,并按以下代码段中的说明使用:

在任何标准的Python环境中,malign可以与以下组件一起安装:

$ pip install malign

在大多数情况下,传递要对齐的序列和 指向^{tt6}的方法(例如anwyenksp)$ 功能:

^{pr2}$

评分矩阵可以用辅助方法计算, 包括各种优化,或从JSON文件读取:

>>>ita_rus=malign.ScoringMatrix(filename="docs/ita_rus.matrix")>>>alms=malign.multi_align(["Giacomo","Яков"],k=4,method="anw",matrix=ita_rus)>>>print(malign.tabulate_alms(alms))|Idx|Seq|Score|#0  |  #1  |  #2  |  #3  |  #4  |  #5  |  #6  |  #7  ||-------|-------|---------|------|------|------|------|------|------|------|------||0|A|2.86|G|i|a|c|o|m|o|||0|B|2.86|-|Я|-|к|о|в|-|||||||||||||||1|A|2.29|G|i|a|c|o|m|o|||1|B|2.29|-|Я|-|к|о|-|в|||||||||||||||2|A|2.12|G|i|a|c|o|m|o|-||2|B|2.12|-|Я|-|к|о|-|-|в||||||||||||||3|A|2.12|G|i|a|c|o|m|o|-||3|B|2.12|-|Я|-|к|-|-|о|в|

也可以通过命令行^{tt3}使用该库$ 工具。如果没有提供矩阵,则默认使用一个恒等式。在

$ ▶ malign baba,maa
| Idx   | Seq   |   Score |#0  |  #1  |  #2  |  #3  |
|-------|-------|---------|------|------|------|------||0| A     |   -0.47 |  b   |  a   |  b   |  a   ||0| B     |   -0.47 |  m   |  a   |  -   |  a   |

$ ▶ malign --matrix docs/ita_rus.matrix -k 6 Giacomo,Яков
| Idx   | Seq   |   Score |#0  |  #1  |  #2  |  #3  |  #4  |  #5  |  #6  |  #7  |
|-------|-------|---------|------|------|------|------|------|------|------|------||0| A     |2.86 |  G   |  i   |  a   |  c   |  o   |  m   |  o   |||0| B     |2.86 |  -   |  Я   |  -   |  к   |  о   |  в   |  -   |||||||||||||||1| A     |2.29 |  G   |  i   |  a   |  c   |  o   |  m   |  o   |||1| B     |2.29 |  -   |  Я   |  -   |  к   |  о   |  -   |  в   |||||||||||||||2| A     |2.12 |  G   |  i   |  a   |  c   |  o   |  m   |  o   |  -   ||2| B     |2.12 |  -   |  Я   |  -   |  к   |  о   |  -   |  -   |  в   ||||||||||||||3| A     |2.12 |  G   |  i   |  a   |  c   |  o   |  m   |  o   |  -   ||3| B     |2.12 |  -   |  Я   |  -   |  к   |  -   |  -   |  о   |  в   ||||||||||||||4| A     |2.12 |  G   |  i   |  a   |  c   |  o   |  m   |  -   |  o   ||4| B     |2.12 |  -   |  Я   |  -   |  к   |  о   |  -   |  в   |  -   ||||||||||||||5| A     |2.12 |  G   |  i   |  a   |  c   |  o   |  -   |  m   |  o   ||5| B     |2.12 |  -   |  Я   |  -   |  к   |  о   |  в   |  -   |  -   |

变更日志

版本0.1:-内部发布、测试和 社区外展

版本0.2:-主要修订与不对称的针线工Wunsch和Yen's k-最短路径实现。-增加了评分矩阵对象排序 以一致和可复制的方式校准,即使校准 分数是一样的

路线图

版本0.3:-完成文档和设置readthedocs-添加 基于杂质/熵的稀疏矩阵推理新方法- 更详细地描述矩阵填充方法-考虑实现 UPGMA和NJ多重校准-添加可视化功能/方法 用于yenksp方法的图-实现块和局部 在anwyenksp中搜索,起始/结尾不同 职位-在可能的情况下实现记忆化-考虑扩展 通过添加随机间隔(pad_align)作为额外的 基线方法-允许anw在阈值百分比内工作 最佳得分-实现一种结合 不同算法-矩阵的加法方法与演示 优化

社区指南

虽然可以直接联系作者寻求支持,但是 建议第三方使用GitHub标准功能,如 发布和请求请求、贡献、报告问题或寻求 支持。在

提供帮助的准则,包括行为准则,可以在 CONTRIBUTING.md文件。在

作者和引文

这个库是由Tiago Tresoldi(tresoldi@shh.mpg.de)开发的。在

作者获得了欧洲研究理事会(ERC)的资助 欧盟地平线2020研究与创新 计划(拨款协议编号ERC Grant #715618Computer-Assisted Language Comparison。在

如果您使用malign,请引用为:

Tresoldi, Tiago (2020). MALIGN, a library for multiple asymmetric alignments on different alphabets. Version 0.2. Jena.

在BibTeX中:

@misc{Tresoldi2020malign,author={Tresoldi, Tiago},title={MALIGN, a library for multiple asymmetric alignments on different alphabets. Version 0.2},howpublished={\url{https://github.com/tresoldi/malign}},address={Jena},publisher={Max Planck Institute for the Science of Human History}year={2020},}

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java Spring freemarker多模板加载程序路径   在java插件中从控制台获取输入   java在包中创建继承类   网页抓取Java Jsoup网页抓取   java在线程内创建一个对象,而true条件具有相同的引用   java如何根据空格数拆分字符串   java新的安卓 studio更新中的配置文件“app”是什么?   java在将ArrayList写入/读取到文件时出现奇怪的问题   java Reg替换文本块第一次出现+最后一次出现   java当我单击任何RecyclerView列表项时,如何在MainActivity的EditText中显示特定的单击项?   JAVA XML删除节点仅删除第一个外观   java如何在数组中查找特定值   java SVG/矢量图形对象布尔运算(并集、交集、减法)   java在Android中创建线程需要多长时间   尝试从JBOSS联系Oracle LDAP服务器时发生java连接重置异常   java基于参数获取特定的实现实例   使用java就地修改文件内容   java MonetaryException:未加载MonetaryAmountsSingletonSpi   java接受用户的不同输入并使其触发完全相同的代码段的最短方法是什么   Spring 3.2.8应用程序中未找到java HTTP 404错误