Mercurial > repos > bgruening > column_arrange_by_header
annotate column_arrange.py @ 1:b97f0d9a31ff draft
planemo upload commit 088e73e958b55dc765778641b8a84080cc289f85-dirty
author | bgruening |
---|---|
date | Fri, 16 Oct 2015 14:19:29 -0400 |
parents | b84c81b7d762 |
children | a69463bf1801 |
rev | line source |
---|---|
0 | 1 #!/usr/bin/env python |
2 import pandas as pd | |
3 import argparse | |
4 | |
5 parser = argparse.ArgumentParser() | |
6 parser.add_argument('-i', '--input', help='Tabular Input File Name') | |
7 parser.add_argument('-o','--output', help='Tabular Output File') | |
1
b97f0d9a31ff
planemo upload commit 088e73e958b55dc765778641b8a84080cc289f85-dirty
bgruening
parents:
0
diff
changeset
|
8 parser.add_argument('-c', '--columns', nargs='+', help='Column Headers to Sort By') |
0 | 9 args=parser.parse_args() |
10 | |
1
b97f0d9a31ff
planemo upload commit 088e73e958b55dc765778641b8a84080cc289f85-dirty
bgruening
parents:
0
diff
changeset
|
11 cols = args.columns |
b97f0d9a31ff
planemo upload commit 088e73e958b55dc765778641b8a84080cc289f85-dirty
bgruening
parents:
0
diff
changeset
|
12 table = pd.read_csv(args.input, sep='\t') |
0 | 13 blist = list(table.columns) |
14 for token in cols: | |
15 blist.remove(token) | |
16 sorted_table = table[args.columns + blist] | |
17 # write without index, seperated by tabs | |
1
b97f0d9a31ff
planemo upload commit 088e73e958b55dc765778641b8a84080cc289f85-dirty
bgruening
parents:
0
diff
changeset
|
18 sorted_table.to_csv(args.output, sep='\t', index=False) |