sys.stdout.write('list file succeed\n') sys.stdout.write('fastqFiles is: {fq}\n'.format(fq=fastqFiles)) #======== (2) align using 2 pass STAR ==================== try: map_sams= STAR2Pass(fastqFiles,starDb,ref_fa,thread) sys.stdout.write('align succeed\n') sys.stdout.write('map_sams is: {map}\n'.format(map=map_sams)) except: sys.stdout.write('align failed\n') Message('align failed',email) sys.exit(1) #======== 2. Add read groups, sort,mark duplicates, and create index #======== (1) sort and add group ========================= try: sort_bams = sam2bam_sort(map_sams,thread) sys.stdout.write('sort bam succeed\n') sys.stdout.write('sort_bams is: {bam}\n'.format(bam=sort_bams)) except: sys.stdout.write('sort bam failed\n') Message('sort bam failed',email) sys.exit(1) try: group_bams = addReadGroup(picard,sort_bams,read_group) sys.stdout.write('add group succeed\n') sys.stdout.write('group_bams is: {group}\n'.format(group=group_bams)) except: sys.stdout.write('add group failed\n') Message('add group failed',email) sys.exit(1)
if aligner == 'gsnap': map_files = gsnap(fastqFiles,db_path, db_name,gsnap_annotation,thread) else: if not os.path.exists(db_path): os.mkdir(db_path) if os.listdir(db_path) == []: STAR_Db(db_path,ref_fa,thread) map_files = STAR(fastqFiles,db_path,thread,annotation,['--outSAMtype BAM SortedByCoordinate','--quantMode GeneCounts']) print 'align succeed' print 'map_files is: ',map_files except: print 'align failed' Message('align failed',email) raise #=========== (3) samtools to sort the file ========== try: sorted_bams = sam2bam_sort(map_files,thread,'name') print 'sorted succeed' print 'sorted_bam is: ',sorted_bams except: print 'sorted failed' Message('sorted failed',email) raise #=========== (4) get mapping stats ================== try: flagstat(sorted_bams) print 'flagstat succeed' except: print 'flagstat failed' Message('flagstat failed',email) raise #=========== (4) htseq_count ========================
else: if not os.path.exists(db_path): os.mkdir(db_path) if os.listdir(db_path) == []: STAR_Db(db_path, ref_fa, thread) map_files = STAR( fastqFiles, db_path, thread, annotation, ['--outSAMtype BAM SortedByCoordinate', '--quantMode GeneCounts']) print 'align succeed' print 'map_files is: ', map_files except: print 'align failed' Message('align failed', email) raise #=========== (3) samtools to sort the file ========== try: sorted_bams = sam2bam_sort(map_files, thread, 'name') print 'sorted succeed' print 'sorted_bam is: ', sorted_bams except: print 'sorted failed' Message('sorted failed', email) raise #=========== (4) get mapping stats ================== try: flagstat(sorted_bams) print 'flagstat succeed' except: print 'flagstat failed' Message('flagstat failed', email) raise #=========== (4) htseq_count ========================