如何从C语言的文本文件中读取DNA序列并将其存储在一个数组中并从每个核苷酸位置开始提取给定长度的所有子串?
例如,序列在文本文件中以下列方式
cctgatagacgctatctggctatccaggtacttaggtcctctgtgcgaatctatgcgtttccaaccat
所有起始位置的所有子串
如果子串的长度= 3
cct,ctg,tga,gat,...,cat
答案 0 :(得分:0)
C语言是强制性的吗?
我会转向更高级别的语言,比如Python,这个函数会这样做:
from itertools import count
def iterate_fragments(sequence,size):
"""Takes a string and yields pieces of given size."""
for number in count():
try: yield sequence[number:number+size]
except IndexError: break
for fragment in iterate_fragments(dna_sequence,3):
print fragment
这个简单的代码将打印每个dna片段(3个核苷酸大小)。