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/