Mercurial > repos > immport-devteam > collapse_pop
annotate collapse_pops.py @ 1:a3ae90eb1232 draft default tip
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
author | azomics |
---|---|
date | Mon, 22 Jun 2020 16:34:35 -0400 |
parents | |
children |
rev | line source |
---|---|
1
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
1 #!/usr/bin/env python |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
2 ###################################################################### |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
3 # Copyright (c) 2016 Northrop Grumman. |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
4 # All rights reserved. |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
5 ###################################################################### |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
6 |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
7 from __future__ import print_function |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
8 import sys |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
9 import pandas as pd |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
10 |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
11 from argparse import ArgumentParser |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
12 |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
13 |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
14 def is_int(s): |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
15 try: |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
16 int(s) |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
17 return True |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
18 except ValueError: |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
19 return False |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
20 |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
21 |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
22 def collapse_populations(in_file, out_file, populations, collapse_in, exit_code): |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
23 df = pd.read_table(in_file, dtype={'Population': object}) |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
24 df['new_population'] = df.Population |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
25 |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
26 for i, sets_pop in enumerate(populations): |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
27 df.loc[df['Population'].isin(sets_pop), ['new_population']] = collapse_in[i] |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
28 |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
29 df.Population = df.new_population |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
30 df.drop(['new_population'], inplace=True, axis=1) |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
31 |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
32 df.to_csv(out_file, sep="\t", index=False) |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
33 |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
34 sys.exit(exit_code) |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
35 |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
36 |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
37 if __name__ == "__main__": |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
38 parser = ArgumentParser( |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
39 prog="ExtractPop", |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
40 description="Extract events associated to given population numbers.") |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
41 |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
42 parser.add_argument( |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
43 '-i', |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
44 dest="input_file", |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
45 required=True, |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
46 help="File location for the text file.") |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
47 |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
48 parser.add_argument( |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
49 '-p', |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
50 dest="pops", |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
51 required=True, |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
52 action='append', |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
53 help="List of populations to collapse.") |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
54 |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
55 parser.add_argument( |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
56 '-o', |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
57 dest="output_file", |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
58 required=True, |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
59 help="Name of the output file.") |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
60 |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
61 parser.add_argument( |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
62 '-c', |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
63 dest="collapse_pop", |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
64 required=True, |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
65 action='append', |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
66 help="What to collapse the populations in.") |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
67 |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
68 args = parser.parse_args() |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
69 |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
70 # check populations |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
71 default_values_pop = ["i.e.:2,3,11,25", "default", "Default"] |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
72 default_values_col = ["i.e.:4", "default", "Default"] |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
73 pops = [p for p in args.pops] |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
74 popc = [pc.strip() for pc in args.collapse_pop] |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
75 exit_code = 0 |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
76 # Check sets of pops to collapse |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
77 populations = [] |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
78 total_pops = [] |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
79 for pop_set in pops: |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
80 if pop_set not in default_values_pop: |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
81 tmp_pops = pop_set.split(",") |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
82 for popn in tmp_pops: |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
83 if not is_int(popn): |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
84 sys.exit(6) |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
85 else: |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
86 total_pops.append(int(popn)) |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
87 strp_pops = [p.strip() for p in tmp_pops] |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
88 populations.append(strp_pops) |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
89 else: |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
90 sys.exit(4) |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
91 if len(total_pops) != len(set(total_pops)): |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
92 sys.exit(7) |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
93 # Check pops to collapse in |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
94 collapse_in = [] |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
95 for col_pop in popc: |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
96 if col_pop not in default_values_col: |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
97 if not is_int(col_pop): |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
98 sys.exit(6) |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
99 else: |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
100 if int(col_pop) > 40: |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
101 exit_code = 2 |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
102 collapse_in.append(col_pop) |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
103 else: |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
104 sys.exit(6) |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
105 if len(collapse_in) != len(set(collapse_in)): |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
106 exit_code += 3 |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
107 |
a3ae90eb1232
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/collapse_pop commit 1e75b0df5680c0cdd8b2b3e5d4c1f8077b430944"
azomics
parents:
diff
changeset
|
108 collapse_populations(args.input_file, args.output_file, populations, collapse_in, exit_code) |