Mercurial > repos > davidvanzessen > ig_blast_merge
diff igblastmerge.py @ 3:39ff573fed64 draft
Uploaded
author | davidvanzessen |
---|---|
date | Mon, 02 Dec 2013 11:01:49 -0500 |
parents | 1f6de7db44b6 |
children | f0bf6e978f77 |
line wrap: on
line diff
--- a/igblastmerge.py Mon Dec 02 11:01:15 2013 -0500 +++ b/igblastmerge.py Mon Dec 02 11:01:49 2013 -0500 @@ -1,4 +1,3 @@ -import argparse import sys # error def stop_err( msg ): @@ -7,35 +6,46 @@ # main def main(): - parser = argparse.ArgumentParser() #docs.python.org/dev/library/argparse.html - parser.add_argument("--input", help="Input file(s)", nargs="+") - parser.add_argument("--id", help="Input file(s) id's", nargs="+") - parser.add_argument("--output", help="Output file") - - args = parser.parse_args() - try: - o = open(args.output, 'w') - i = open(args.input[-1], 'r') - separator = "\t" - newline = "\n" - header = "Sample" - line = i.readline() - o.write(line[:line.rfind(newline)] + separator + header + newline) #write the header - i.close() - - for cf,i in zip(args.input,args.id): - f = open(cf, 'r') - line = f.readline() - line = f.readline() #skip header - while line: - o.write(line[:line.rfind(newline)] + separator + i + newline) - line = f.readline() - f.close() - o.close() - - except Exception, ex: - stop_err('Error running new_column.py\n' + str(ex)) - sys.exit(0) + args = sys.argv[2:-2] + + try: + o = open(sys.argv[-1], 'w') + i = open(args[1], 'r') + separator = "\t" + newline = "\n" + line = i.readline() + #write the header + o.write(line[:line.rfind(newline)] + separator + "Sample" + separator + "Replicate" + newline) + i.close() + + current = 1 + sampleID = args[0] + count = 1 + + while True: + print str(o) + f = open(args[current], 'r') + line = f.readline() + line = f.readline() + while line: + o.write(line[:line.rfind(newline)] + separator + sampleID + separator + str(count) + newline) + line = f.readline() + f.close() + + if current >= (len(args) - 1): + break + if args[current + 1].find("/") is -1: + sampleID = args[current + 1] + current += 1 + count = 1 + else: + count += 1 + current += 1 + o.close() + + except Exception, ex: + stop_err('Error running new_column.py\n' + str(ex)) + sys.exit(0) if __name__ == "__main__": print sys.argv