# HG changeset patch # User davidvanzessen # Date 1386000109 18000 # Node ID 39ff573fed647c36f72f3c7730351be81efe29a8 # Parent 591a8bc0af8e598d5d6d94badaa44e9de4b2aada Uploaded diff -r 591a8bc0af8e -r 39ff573fed64 igblastmerge.py --- 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