Skip to content

Commit d588fa2

Browse files
committed
quality control
1 parent 6b41914 commit d588fa2

File tree

1 file changed

+41
-0
lines changed

1 file changed

+41
-0
lines changed

quality_control.py

+41
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
#!/usr/bin/env python3
2+
# -*- coding: utf8 -*-
3+
4+
import os
5+
import sys
6+
7+
8+
def quality_filter_SE(quality_var,input_file,pattern="single-end"):
9+
dir,file=os.path.dirname(input_file),os.path.basename(input_file)
10+
out=file.split('.')[0]+"_temp"+".fastq"
11+
cutadapt='cutadapt -q %i,%i --trim-n -o %s '%(quality_var,quality_var,out)
12+
qulity_cmd=os.system(cutadapt)
13+
if qulity_cmd!=0:
14+
print("Error: Fail to filter low quality reads")
15+
sys.exit(1)
16+
os.remove(input_file)
17+
os.rename(out,input_file)
18+
return 0
19+
20+
21+
def quality_filter_PE(quality_var,R1,R2,pattern="pair-end"):
22+
dir, file1,file2 = os.path.dirname(R1), os.path.basename(R1),os.path.basename(R1)
23+
outR1,outR2=file1.split('.')[0]+'_temp1'+'.fastq',file2.split('.')[0]+'_temp1'+'.fastq'
24+
cutadapt = 'cutadapt -q %i,%i --trim-n -o %s -p %s %s %s' % (quality_var, quality_var,outR1,outR2,R1,R2)
25+
qulity_cmd = os.system(cutadapt)
26+
if qulity_cmd != 0:
27+
print("Error: Fail to filter low quality reads")
28+
sys.exit(1)
29+
os.remove(R1)
30+
os.remove(R2)
31+
os.rename(outR1,R1)
32+
os.rename(outR2,R2)
33+
return 0
34+
35+
36+
37+
38+
if __name__=='__main__':
39+
quality_filter_SE(sys.argv[1:])
40+
41+

0 commit comments

Comments
 (0)