提问人:Silvia 提问时间:10/4/2023 最后编辑:Silvia 更新时间:10/4/2023 访问量:77
在 Python 上过滤重复序列 [duplicate]
Filter repetitive sequences on Python [duplicate]
问:
我有一个这样的 txt 文件:
GAACACGAAGGACGC
GAACACGAAGGACGC
GAACACGAAGGACGC
GAACACGAAGGACGC
GAACACGAAGGACGC
TCTAAGTAGTCAAAA
TCTAAGTAGTCAAAA
TCTAAGTAGTCAAAA
TCTAAGTAGTCAAAA
TCTAAGTAGTCAAAA
TCTAAGTAGTCAAAA
ACGGTGGGAATAAGA
ACGGTGGGAATAAGA
ACGGTGGGAATAAGA
ACGGTGGGAATAAGA
ACGGTGGGAATAAGA
GGGGCGATAATTTGC
GGGGCGATAATTTGC
GGGGCGATAATTTGC
GGGGCGATAATTTGC
GGGGCGATAATTTGC
GGGGCGATAATTTGC
我想过滤掉重复六次的序列并将它们保存在 txt 文件中。我怎样才能在 Python 上做到这一点?对不起,如果这是一个愚蠢的问题。
先谢谢你
我试过了:
ids = open('IDs.txt', 'r')
for id in ids:
if id is ...
最大的问题是 txt 文件有超过 100k 个唯一序列。我不能一个接一个地去。这就是我被困在这里的原因
答:
1赞
LetzerWille
10/4/2023
#1
from collections import Counter
lst = []
lst6 = []
with open(r'data.txt', 'r') as f:
for l in f:
lst.extend(l.split())
for k,v in Counter(lst).items():
if v == 6:
lst6.append(k)
with open(r'data6.txt', 'w') as f:
for x in lst6:
f.write(x)
f.write('\n')
评论
0赞
Silvia
10/4/2023
它奏效了,非常感谢!
评论
collections.Counter