view sam_to_fastq.py @ 0:55107d4a728c draft

planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/sam_to_fastq commit 0651eb8c86d890e4b223fec82ab3980932710030
author drosofff
date Mon, 21 Mar 2016 17:33:26 -0400
parents
children 8acb72264319
line wrap: on
line source

#!/usr/bin/python
#
import sys
import argparse

def Parser():
    the_parser = argparse.ArgumentParser()
    the_parser.add_argument(
        '--input', action="store", type=str, help="input SAM file")
    the_parser.add_argument(
        '--output', action="store", type=str, help="output FASTQ file")
    args = the_parser.parse_args()
    return args
    
        
def print_fastq_sequence(samline, file):
  samfields = samline[:-1].split("\t")
  file.write ( '@%s\n%s\n+\n%s' % (samfields[0], samfields[9], samfields[10]) )

def main(input, output):
    infile = open (input, "r")
    outfile = open (output, "w")
    with open (input, "r") as infile:
        with open (output, "w") as outfile:
            for line in infile:
                if line[0] == "@":
                    continue
                if line.split("\t")[1] != "4":
                    print_fastq_sequence (line, outfile)

if __name__ == "__main__":
    args = Parser()
    main (args.input, args.output)