comparison igblastmerge.py @ 0:1f6de7db44b6 draft

Uploaded
author davidvanzessen
date Mon, 23 Sep 2013 05:42:54 -0400
parents
children 39ff573fed64
comparison
equal deleted inserted replaced
-1:000000000000 0:1f6de7db44b6
1 import argparse
2 import sys
3 # error
4 def stop_err( msg ):
5 sys.stderr.write( "%s\n" % msg )
6 sys.exit()
7
8 # main
9 def main():
10 parser = argparse.ArgumentParser() #docs.python.org/dev/library/argparse.html
11 parser.add_argument("--input", help="Input file(s)", nargs="+")
12 parser.add_argument("--id", help="Input file(s) id's", nargs="+")
13 parser.add_argument("--output", help="Output file")
14
15 args = parser.parse_args()
16 try:
17 o = open(args.output, 'w')
18 i = open(args.input[-1], 'r')
19 separator = "\t"
20 newline = "\n"
21 header = "Sample"
22 line = i.readline()
23 o.write(line[:line.rfind(newline)] + separator + header + newline) #write the header
24 i.close()
25
26 for cf,i in zip(args.input,args.id):
27 f = open(cf, 'r')
28 line = f.readline()
29 line = f.readline() #skip header
30 while line:
31 o.write(line[:line.rfind(newline)] + separator + i + newline)
32 line = f.readline()
33 f.close()
34 o.close()
35
36 except Exception, ex:
37 stop_err('Error running new_column.py\n' + str(ex))
38 sys.exit(0)
39
40 if __name__ == "__main__":
41 print sys.argv
42 main()