0
|
1 #!/usr/bin/env python
|
|
2 import pandas as pd
|
|
3 import argparse
|
|
4
|
|
5
|
|
6 parser = argparse.ArgumentParser()
|
|
7 parser.add_argument('-i', '--input', help='Tabular Input File Name')
|
|
8 parser.add_argument('-o','--output', help='Tabular Output File')
|
|
9 parser.add_argument('-c', '--columns',nargs='+', help='Column Headers to Sort By')
|
|
10 args=parser.parse_args()
|
|
11
|
|
12 cols=args.columns
|
|
13 table=pd.read_csv(args.input,sep='\t')
|
|
14 blist = list(table.columns)
|
|
15 for token in cols:
|
|
16 blist.remove(token)
|
|
17 sorted_table = table[args.columns + blist]
|
|
18 # write without index, seperated by tabs
|
|
19 sorted_table.to_csv(args.output,sep='\t',index=False)
|
|
20
|