【发布时间】:2019-03-27 06:13:04
【问题描述】:
输入文件示例:
1 AAcgGGGGGGtacctgt yes
2 TTcccccctgtAAcgta no
3 tcgAAAAaatacgacc no
4 AAcgtataatacctgt no
...
我想编写一个程序来扫描每个序列并检查单体核苷酸重复 (mnr)
示例输出:
1,AAcgGGGGGGtacctgt,yes
2,TTcccccctgtAAcgta,no
定义:单体核苷酸是:A、T、C、G的重复(不区分大小写)
我正在寻找的一排会是这样的:
AAAAaaAAgtc
或者
gtAAAAAAAAAAc
或者
aaaaaaAAA
或者
aaaaaaaaaa
或者
ccccccccccc
或者
CCCCCcccCCC
或者...
我试过这个正则表达式但不起作用:
import csv
import re
list=[]
with open('sequences.txt', 'r') as f:
reader = csv.reader(f,delimiter="\t")
seq=re.findall(r'[Aa]{6, }','sequences.txt')
for line in reader:
if line.__contains__(seq):
print(list.append(line))
任何帮助表示赞赏。
【问题讨论】:
-
mnr 是更大字符串的一部分吗?
-
还要说明你想要8个以上还是6个以上!
-
对不起。是的,它是较大字符串(序列)的一部分,我想要超过 6 个!非常感谢:)
-
这个网站是关于编程问题的,而不是让别人为你写代码。请提供您已经尝试过但未按您预期/希望的方式工作的代码。
-
感谢您的回复,我想到了正则表达式并写了这个..但是我知道它不正确:
标签: python regex bioinformatics dna-sequence