Biopython之pairwise alignment

文章介绍了如何在Python中使用Bio库的PairwiseAligner对象进行序列比对,包括全局和局部比对算法,并展示了如何设置比对参数和获取最佳比对结果。Alignments对象存储所有最佳比对,具有相同的比对分数。
摘要由CSDN通过智能技术生成

1. 生成PairwiseAligner对象

from Bio import Align

aligner = Align.PairwiseAligner()
print(aligner.__repr__())#了解该对象的基本信息
print(aligner)#打印参数
#设置比对参数
...

输出结果:

Pairwise aligner, implementing the Needleman-Wunsch, Smith-Waterman, Gotoh, and Waterman-Smith-Beyer global and local alignment algorithms
Pairwise sequence aligner with parameters


  wildcard: None
  match_score: 1.000000
  mismatch_score: 0.000000
  target_internal_open_gap_score: 0.000000
  target_internal_extend_gap_score: 0.000000
  target_left_open_gap_score: 0.000000
  target_left_extend_gap_score: 0.000000
  target_right_open_gap_score: 0.000000
  target_right_extend_gap_score: 0.000000
  query_internal_open_gap_score: 0.000000
  query_internal_extend_gap_score: 0.000000
  query_left_open_gap_score: 0.000000
  query_left_extend_gap_score: 0.000000
  query_right_open_gap_score: 0.000000
  query_right_extend_gap_score: 0.000000
  mode: global

 可以通过aligner.参数的方式设置比对参数。其中比对算法align.algorith根据参数设置,由程序自动选择,不能手动更改。

 2.生成Alignments对象

Alignments对象是一个迭代器对象,其中储存了所有可能的最佳比对结果,可以通过alignments[n]这种方式查看,这些比对结果都具有相同的比对分数alignments.score。

Alignments对象可以被重复遍历

from Bio import Align

seq_1 = "GAACT"
seq_2 = "GAT"
aligner = Align.PairwiseAligner()

#setting parameters
#
alignments = aligner.align(seq_1,seq_2)
print(alignments)
print(alignments.__dict__)
print(len(alignments))
print(alignments[0],alignments[1])

输出结果:

<Bio.Align.PairwiseAlignments object at 0x000001D2AA949DA0>#<对象名 object at 内存地址>
{'seqA': 'GAACT', 'seqB': 'GAT', 'score': 3.0, 'paths': <Path generator object at 0x000001D2AC004D68>, 'index': -1}
2
GAACT
||--|
GA--T
 GAACT
|-|-|
G-A-T

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值