我需要Matlab的近似字符串匹配功能。我通过调用nwalign()发现Bioinformatics工具箱中有Needleman–Wunsch algorithm。唯一的问题是它只适用于氨基酸序列。所以当我尝试用数字和其他符号比较字符串时,我得到一个错误说:“两个序列都必须是氨基酸。”
有没有办法允许nwalign()函数接受任何类型序列,还是有另一个matlab函数可以执行近似字符串匹配,而不仅限于生物信息学?
答案 0 :(得分:2)
这已在此thread
中讨论过它解释了如何使用未记录的函数与氨基酸或核苷酸以外的符号进行比对。
答案 1 :(得分:0)
看看python's nwalign()
。
http://pypi.python.org/pypi/nwalign
似乎将字符串作为参数(尚未查看源代码),因此如果您有numpy序列或列表,则可能需要转换它们。
答案 2 :(得分:0)
您可以通过这种方式尝试:
[Score,Align] =nwalign(Seq1,Seq2,'Alphabet','NT')
通过这种方式,您可以比对两个核苷酸序列。
您将使用哪种计分矩阵?