美文网首页Py100Skills
[Py017] 剔除含N序列-any/all

[Py017] 剔除含N序列-any/all

作者: 安哥生个信 | 来源:发表于2018-11-12 12:22 被阅读29次

any()实现了或(OR)运算,而all()实现了与(AND)运算

In[24]: [record.seq for record in SeqIO.parse('xx.fa','fasta')]
Out[24]: 
[Seq('AAAAAAAAAATTTTTTTTTTCCCCC', SingleLetterAlphabet()),
 Seq('AAAAAAAAAATTTTTTTTTT', SingleLetterAlphabet()),
 Seq('AAAAAANNNNTTTTTTTTTT', SingleLetterAlphabet()),
 Seq('NNNNNNNNNNNNNNNNNNNNNNN', SingleLetterAlphabet())]
In[25]: [record.seq for record in SeqIO.parse('xx.fa','fasta') if any(base !='N' for base in record.seq)] # 仅剔除全部为N的序列
Out[25]: 
[Seq('AAAAAAAAAATTTTTTTTTTCCCCC', SingleLetterAlphabet()),
 Seq('AAAAAAAAAATTTTTTTTTT', SingleLetterAlphabet()),
 Seq('AAAAAANNNNTTTTTTTTTT', SingleLetterAlphabet())]
In[26]: [record.seq for record in SeqIO.parse('xx.fa','fasta') if all(base !='N' for base in record.seq)] # 剔除含N的序列
Out[26]: 
[Seq('AAAAAAAAAATTTTTTTTTTCCCCC', SingleLetterAlphabet()),
 Seq('AAAAAAAAAATTTTTTTTTT', SingleLetterAlphabet())]

相关文章

网友评论

    本文标题:[Py017] 剔除含N序列-any/all

    本文链接:https://www.haomeiwen.com/subject/wigqfqtx.html