Mercurial > repos > devteam > tabular_to_fastq
diff tabular_to_fastq.py @ 0:9ae652b76979 draft
Imported from capsule None
author | devteam |
---|---|
date | Thu, 23 Jan 2014 12:31:40 -0500 |
parents | |
children | 643018aa1435 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tabular_to_fastq.py Thu Jan 23 12:31:40 2014 -0500 @@ -0,0 +1,29 @@ +#Dan Blankenberg +import sys + +def main(): + input_filename = sys.argv[1] + output_filename = sys.argv[2] + identifier_col = int( sys.argv[3] ) - 1 + sequence_col = int( sys.argv[4] ) - 1 + quality_col = int( sys.argv[5] ) - 1 + + max_col = max( identifier_col, sequence_col, quality_col ) + num_reads = None + fastq_read = None + skipped_lines = 0 + out = open( output_filename, 'wb' ) + for num_reads, line in enumerate( open( input_filename ) ): + fields = line.rstrip( '\n\r' ).split( '\t' ) + if len( fields ) > max_col: + out.write( "@%s\n%s\n+\n%s\n" % ( fields[identifier_col], fields[sequence_col], fields[quality_col] ) ) + else: + skipped_lines += 1 + + out.close() + if num_reads is None: + print "Input was empty." + else: + print "%i tabular lines were written as FASTQ reads. Be sure to use the FASTQ Groomer tool on this output before further analysis." % ( num_reads + 1 - skipped_lines ) + +if __name__ == "__main__": main()