1.下机的fastq文件中四行表示一个reads,但是有的reads 是不足四行的,需要我们去过滤这些reads并且也过滤掉第三行碱基数不等的。下面的python脚本专门处理该fastq文件。
#!/usr/bin/env python
#-*- encoding=UTF-8 -*-
import sys
fa = open(sys.argv[1], "r")
fb = open(sys.argv[1]+".fq", "w")
line_id = 0
for eachline in fa.readlines():
line_id += 1
if line_id % 4 == 1:
read11=eachline.strip()[0]
if read11!='@':
line_id=0
continue
else:
read1 = eachline
elif line_id % 4 == 2:
read2 = eachline
elif line_id % 4 == 3:
read3 = eachline
else:
if len(read2)==len(eachline) :
fb.write( read1 + read2 + read3 + eachline )
fa.close()
fb.close()
2.使用方法如下:
python /fastq所在的文件的绝对路径
本博主新开公众号, 希望大家能扫码关注一下,十分感谢大家。