请教一个perl程序,从fasta格式DNA序列中抽出部分感兴趣序列
展开全部
这个其实很简单,只是逻辑要通顺。
我给你perl的解决思路:
首先,你要确定你的fasta文件的内容的规律性。比如每段序列的开始是不是都会有一些特殊的标志。那么可以用next函数,将这些不是序列的内容跳过。
然后开始读取每一行,将每一行的内容串联起来,直到读取到下一段序列开始的标记
(该处使用if判断,如果读到标记就停止记录,可以有个好办法,你前期使用一个$num,前面读取的每行都串联给$seq,然后当你判断到标记符号出现以后,让$num++,并把$array[$num]=$seq,此处要注意一下,这里还要记得让$seq为空一下否则会出大问题的 ,然后就可以记录此条序列并进入下一条序列的读取了)
如此反复判断读取,最终可以将每个序列都读取出。
只要发现规律,有了思路,读取序列简直是分分钟的事情,思路以及发现规律性最为重要。
我给你perl的解决思路:
首先,你要确定你的fasta文件的内容的规律性。比如每段序列的开始是不是都会有一些特殊的标志。那么可以用next函数,将这些不是序列的内容跳过。
然后开始读取每一行,将每一行的内容串联起来,直到读取到下一段序列开始的标记
(该处使用if判断,如果读到标记就停止记录,可以有个好办法,你前期使用一个$num,前面读取的每行都串联给$seq,然后当你判断到标记符号出现以后,让$num++,并把$array[$num]=$seq,此处要注意一下,这里还要记得让$seq为空一下否则会出大问题的 ,然后就可以记录此条序列并进入下一条序列的读取了)
如此反复判断读取,最终可以将每个序列都读取出。
只要发现规律,有了思路,读取序列简直是分分钟的事情,思路以及发现规律性最为重要。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询