python删除fastq文件固定位置的碱基(以及配套的质量值)
文字版:
#!/usr/bin/env python
# coding=gbk
##暗反应5,6cycle需要去除第5,6个碱基和他们的质量值##
##必须放在输出文件夹路径下运行,参数1是原始fq.gz文件,参数2是截取后fq.gz文件##
##命令行输入示例:python TrimBase.py 1.fq.gz 1.fq##
import sys
import gzip
ifile_name=sys.argv[1]
ofile_name=sys.argv[2]
in_file = gzip.open(ifile_name, "rb")
out_file =open(ofile_name, "w")
idx = 0
for i in in_file.readlines():
idx += 1
i = i.decode()
i = i.strip()
if idx % 4 == 2: ##处理第二行序列信息:先将字符串变成列表,之后删除列表的第5,6个元素
list_str = list(i)
list_str.pop(4)
list_str.pop(4)
i = ''.join(list_str)
out_file.write(i + "\n")
elif idx % 4 == 0: ##处理第四行质量值
list_str = list(i)
list_str.pop(4)
list_str.pop(4)
i = ''.join(list_str)
out_file.write(i + "\n")
else:
out_file.write(i + "\n")
in_file.close()
out_file.close()
图片版:

elif idx % 4 == 0: ##处理第四行质量值 list_str = list(i) list_str.pop(4) list_str.pop(4) i = ''.join(list_str) out_file.write(i + "\n")
May we all proceed with wisdom and grace.
https://www.cnblogs.com/YlnChen/

浙公网安备 33010602011771号