Mercurial > repos > mvdbeek > add_input_name_as_column
annotate add_input_name_as_column.py @ 6:3284b72eef56 draft
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/add_input_name_as_column commit 9292c57c34283543e86ecc65f805977224f6fc7b"
| author | iuc |
|---|---|
| date | Wed, 25 Mar 2020 07:11:05 -0400 |
| parents | 06061aa49527 |
| children | 8061668d0868 |
| rev | line source |
|---|---|
|
6
3284b72eef56
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/add_input_name_as_column commit 9292c57c34283543e86ecc65f805977224f6fc7b"
iuc
parents:
5
diff
changeset
|
1 import argparse |
|
5
06061aa49527
planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/add_input_name_as_column commit db90fc6943b99322a6d7459f644a6624c69a0be5-dirty
mvdbeek
parents:
0
diff
changeset
|
2 import io |
| 0 | 3 |
|
5
06061aa49527
planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/add_input_name_as_column commit db90fc6943b99322a6d7459f644a6624c69a0be5-dirty
mvdbeek
parents:
0
diff
changeset
|
4 |
| 0 | 5 def Parser(): |
|
5
06061aa49527
planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/add_input_name_as_column commit db90fc6943b99322a6d7459f644a6624c69a0be5-dirty
mvdbeek
parents:
0
diff
changeset
|
6 the_parser = argparse.ArgumentParser(description="add label to last column of file") |
|
06061aa49527
planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/add_input_name_as_column commit db90fc6943b99322a6d7459f644a6624c69a0be5-dirty
mvdbeek
parents:
0
diff
changeset
|
7 the_parser.add_argument('--input', required=True, action="store", type=str, help="input tabular file") |
|
06061aa49527
planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/add_input_name_as_column commit db90fc6943b99322a6d7459f644a6624c69a0be5-dirty
mvdbeek
parents:
0
diff
changeset
|
8 the_parser.add_argument('--output', required=True, action="store", type=str, help="output file path") |
|
06061aa49527
planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/add_input_name_as_column commit db90fc6943b99322a6d7459f644a6624c69a0be5-dirty
mvdbeek
parents:
0
diff
changeset
|
9 the_parser.add_argument('--label', required=True, action="store", type=str, help="label to add in last column") |
|
06061aa49527
planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/add_input_name_as_column commit db90fc6943b99322a6d7459f644a6624c69a0be5-dirty
mvdbeek
parents:
0
diff
changeset
|
10 the_parser.add_argument('--header', action="store", type=str, help="column label for last column") |
|
6
3284b72eef56
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/add_input_name_as_column commit 9292c57c34283543e86ecc65f805977224f6fc7b"
iuc
parents:
5
diff
changeset
|
11 the_parser.add_argument('--prepend', action='store_true', default=False, help='Prepend column instead of appending' ) |
|
3284b72eef56
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/add_input_name_as_column commit 9292c57c34283543e86ecc65f805977224f6fc7b"
iuc
parents:
5
diff
changeset
|
12 |
|
5
06061aa49527
planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/add_input_name_as_column commit db90fc6943b99322a6d7459f644a6624c69a0be5-dirty
mvdbeek
parents:
0
diff
changeset
|
13 args = the_parser.parse_args() |
|
06061aa49527
planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/add_input_name_as_column commit db90fc6943b99322a6d7459f644a6624c69a0be5-dirty
mvdbeek
parents:
0
diff
changeset
|
14 return args |
| 0 | 15 |
| 16 | |
|
5
06061aa49527
planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/add_input_name_as_column commit db90fc6943b99322a6d7459f644a6624c69a0be5-dirty
mvdbeek
parents:
0
diff
changeset
|
17 args = Parser() |
|
06061aa49527
planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/add_input_name_as_column commit db90fc6943b99322a6d7459f644a6624c69a0be5-dirty
mvdbeek
parents:
0
diff
changeset
|
18 |
|
06061aa49527
planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/add_input_name_as_column commit db90fc6943b99322a6d7459f644a6624c69a0be5-dirty
mvdbeek
parents:
0
diff
changeset
|
19 |
|
06061aa49527
planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/add_input_name_as_column commit db90fc6943b99322a6d7459f644a6624c69a0be5-dirty
mvdbeek
parents:
0
diff
changeset
|
20 with io.open(args.input, encoding="utf-8") as input, io.open(args.output, 'w', encoding="utf-8") as output: |
|
06061aa49527
planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/add_input_name_as_column commit db90fc6943b99322a6d7459f644a6624c69a0be5-dirty
mvdbeek
parents:
0
diff
changeset
|
21 for i, line in enumerate(input): |
|
06061aa49527
planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/add_input_name_as_column commit db90fc6943b99322a6d7459f644a6624c69a0be5-dirty
mvdbeek
parents:
0
diff
changeset
|
22 line = line.strip('\n') |
|
06061aa49527
planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/add_input_name_as_column commit db90fc6943b99322a6d7459f644a6624c69a0be5-dirty
mvdbeek
parents:
0
diff
changeset
|
23 if (i == 0) and args.header: |
|
6
3284b72eef56
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/add_input_name_as_column commit 9292c57c34283543e86ecc65f805977224f6fc7b"
iuc
parents:
5
diff
changeset
|
24 new_entry = args.header |
|
5
06061aa49527
planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/add_input_name_as_column commit db90fc6943b99322a6d7459f644a6624c69a0be5-dirty
mvdbeek
parents:
0
diff
changeset
|
25 else: |
|
6
3284b72eef56
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/add_input_name_as_column commit 9292c57c34283543e86ecc65f805977224f6fc7b"
iuc
parents:
5
diff
changeset
|
26 new_entry = args.label |
|
3284b72eef56
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/add_input_name_as_column commit 9292c57c34283543e86ecc65f805977224f6fc7b"
iuc
parents:
5
diff
changeset
|
27 if args.prepend: |
|
3284b72eef56
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/add_input_name_as_column commit 9292c57c34283543e86ecc65f805977224f6fc7b"
iuc
parents:
5
diff
changeset
|
28 line = "%s\t%s\n" % (new_entry, line) |
|
3284b72eef56
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/add_input_name_as_column commit 9292c57c34283543e86ecc65f805977224f6fc7b"
iuc
parents:
5
diff
changeset
|
29 else: |
|
3284b72eef56
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/add_input_name_as_column commit 9292c57c34283543e86ecc65f805977224f6fc7b"
iuc
parents:
5
diff
changeset
|
30 line = "%s\t%s\n" % (line, new_entry) |
|
5
06061aa49527
planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/add_input_name_as_column commit db90fc6943b99322a6d7459f644a6624c69a0be5-dirty
mvdbeek
parents:
0
diff
changeset
|
31 output.write(line) |
