Mercurial > repos > immport-devteam > cs_overview
annotate crossSampleOverview.py @ 2:a64ece32a01a draft default tip
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
author | azomics |
---|---|
date | Tue, 28 Jul 2020 08:32:36 -0400 |
parents | |
children |
rev | line source |
---|---|
2
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
1 #!/usr/bin/env python |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
2 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
3 ###################################################################### |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
4 # Copyright (c) 2016 Northrop Grumman. |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
5 # All rights reserved. |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
6 ###################################################################### |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
7 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
8 # version 1.1 -- August 2017 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
9 # added checks for consistency between input files |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
10 # and upper limit on nb of cluster to look at |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
11 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
12 from __future__ import print_function |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
13 import sys |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
14 import os |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
15 import logging |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
16 import fileinput |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
17 import pandas as pd |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
18 from argparse import ArgumentParser |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
19 from jinja2 import Environment, FileSystemLoader |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
20 from shutil import copyfile |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
21 from collections import defaultdict |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
22 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
23 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
24 def check_pops(mfi_file, stat1): |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
25 df = pd.read_table(mfi_file) |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
26 df1 = pd.read_table(stat1) |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
27 nb_pop = len(set(df.Population)) |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
28 nb_pop1 = len(df1.columns) - 2 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
29 if (nb_pop > 40): |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
30 sys.stderr.write("There are " + str(nb_pop) + " in the input file.") |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
31 sys.exit(1) |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
32 if (nb_pop != nb_pop1): |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
33 sys.exit(2) |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
34 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
35 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
36 def panel_to_json_string(df): |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
37 # from http://stackoverflow.com/questions/28078118/merge-many-json-strings-with-python-pandas-inputs |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
38 def __merge_stream(key, stream): |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
39 return '"' + key + '"' + ': ' + stream + ', ' |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
40 try: |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
41 if 'Unnamed: 0' in df.columns: |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
42 df = df.drop(['Unnamed: 0'], axis=1) |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
43 stream = '{' |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
44 for index, subdf in df.groupby(level=0): |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
45 stream += __merge_stream(index, df.loc[index, :, :].droplevel(0).to_json()) |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
46 # take out extra last comma |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
47 stream = stream[:-2] |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
48 # add the final paren |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
49 stream += '}' |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
50 except: |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
51 logging.exception('Panel Encoding did not work') |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
52 return stream |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
53 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
54 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
55 def get_outliers(group, upper, lower): |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
56 cat = group.name |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
57 out = {} |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
58 for marker in group: |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
59 # skip population since upper and lower don't contain it, since it was made after a group by Population |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
60 if marker != 'Population': |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
61 out[marker] = group[(group[marker] > upper.loc[cat][marker]) | (group[marker] < lower.loc[cat][marker])][marker] |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
62 return out |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
63 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
64 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
65 def get_boxplot_stats(all_data, mfi_file, output_json): |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
66 # modified code from http://bokeh.pydata.org/en/latest/docs/gallery/boxplot.html |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
67 # Get initial MFI values |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
68 mfi = pd.read_table(mfi_file) |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
69 mfi = mfi.set_index('Population') |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
70 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
71 df = pd.read_table(all_data) |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
72 # check if ever some pops not in cs_files |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
73 missing_pop = [x for x in mfi.index if x not in set(df.Population)] |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
74 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
75 if (missing_pop): |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
76 zeros = {} |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
77 for m in df.columns: |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
78 zeros[m] = [0 for x in missing_pop] |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
79 tmpdf = pd.DataFrame(zeros) |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
80 tmpdf.Population = missing_pop |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
81 df = df.append(tmpdf) |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
82 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
83 pops = df.groupby('Population') |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
84 q1 = pops.quantile(q=0.25) |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
85 q2 = pops.quantile(q=0.5) |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
86 q3 = pops.quantile(q=0.75) |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
87 iqr = q3 - q1 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
88 upper = q3 + 1.5*iqr |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
89 lower = q1 - 1.5*iqr |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
90 resampled = False |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
91 # get outliers |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
92 out = pops.apply(get_outliers, upper, lower).dropna() |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
93 outliers = defaultdict(dict) |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
94 for population in set(df.Population): |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
95 for marker in df.columns: |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
96 if marker != 'Population': |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
97 tmp_outliers = list(out[population][marker]) |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
98 if (len(list(out[population][marker])) > 100): |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
99 tmp_outliers = list(out[population][marker].sample(n=100)) |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
100 resampled = True |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
101 outliers[population][marker] = tmp_outliers |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
102 outdf = pd.DataFrame(outliers) |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
103 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
104 data = pd.concat({'q1': q1, |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
105 'q2': q2, |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
106 'q3': q3, |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
107 'upper': upper, |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
108 'lower': lower, |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
109 'outliers': outdf.T, |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
110 'mfi': mfi}, keys=['q1','q2','q3','upper','lower','outliers','mfi']) |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
111 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
112 with open(output_json, "w") as js_all: |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
113 js_all.write(panel_to_json_string(data)) |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
114 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
115 return resampled |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
116 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
117 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
118 def cs_overview(input_file, input_mfi, init_mfi, output_file, output_dir, tools_dir, cs_files): |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
119 os.mkdir(output_dir) |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
120 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
121 env = Environment(loader=FileSystemLoader(tools_dir + "/templates")) |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
122 template = env.get_template("csOverview.template") |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
123 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
124 real_directory = output_dir.replace("/job_working_directory", "") |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
125 context = {'outputDirectory': real_directory} |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
126 overview = template.render(**context) |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
127 with open(output_file, "w") as outf: |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
128 outf.write(overview) |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
129 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
130 cs_overview_file = output_dir + "/csOverview.tsv" |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
131 copyfile(input_file, cs_overview_file) |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
132 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
133 cs_overview_mfis = output_dir + "/csAllMFIs.tsv" |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
134 copyfile(input_mfi, cs_overview_mfis) |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
135 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
136 # Get all the data to calculate quantiles, IRC and outliers. |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
137 tmp_all_data = "csAllData.tsv" |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
138 with open(tmp_all_data, "a") as alldata: |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
139 # assumes that the files have ran through flock and CS and therefore have the same headers |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
140 df1 = pd.read_table(cs_files[0]) |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
141 df1.to_csv(alldata, sep="\t", header=True, index=False) |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
142 for i in range(1, len(cs_files)): |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
143 df = pd.read_table(cs_files[i]) |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
144 df.to_csv(alldata, sep="\t", header=False, index=False) |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
145 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
146 cs_boxplot_data = output_dir + "/csBoxplotData.json" |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
147 resampled = get_boxplot_stats(tmp_all_data, init_mfi, cs_boxplot_data) |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
148 if resampled: |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
149 to_find = '<div id="outlierWarning" style="display:none;">' |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
150 to_replace = '<div id="outlierWarning">' |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
151 ## yay python 2.7 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
152 ro = fileinput.input(output_file, inplace=True, backup=".bak") |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
153 for roline in ro: |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
154 print(roline.replace(to_find, to_replace), end='') |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
155 ro.close() |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
156 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
157 return |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
158 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
159 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
160 if __name__ == "__main__": |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
161 parser = ArgumentParser( |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
162 prog="csOverview", |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
163 description="Generate an overview plot of crossSample results.") |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
164 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
165 parser.add_argument( |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
166 '-i', |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
167 dest="input_file", |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
168 required=True, |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
169 help="File location for the summary statistics from CrossSample.") |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
170 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
171 parser.add_argument( |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
172 '-I', |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
173 dest="input_mfi", |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
174 required=True, |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
175 help="File location for the MFI summary statistics from CrossSample.") |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
176 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
177 parser.add_argument( |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
178 '-s', |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
179 dest="cs_outputs", |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
180 required=True, |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
181 action='append', |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
182 help="File location for the CrossSample output files.") |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
183 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
184 parser.add_argument( |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
185 '-o', |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
186 dest="output_file", |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
187 required=True, |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
188 help="File location for the HTML output file.") |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
189 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
190 parser.add_argument( |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
191 '-m', |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
192 dest="mfi", |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
193 required=True, |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
194 help="File location for the MFI from FLOCK.") |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
195 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
196 parser.add_argument( |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
197 '-d', |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
198 dest="output_directory", |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
199 required=True, |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
200 help="Directory location for the html supporting files.") |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
201 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
202 parser.add_argument( |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
203 '-t', |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
204 dest="tool_directory", |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
205 required=True, |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
206 help="Location of the Tool Directory.") |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
207 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
208 args = parser.parse_args() |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
209 |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
210 cs_files = [f for f in args.cs_outputs] |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
211 check_pops(args.mfi, args.input_file) |
a64ece32a01a
"planemo upload for repository https://github.com/ImmPortDB/immport-galaxy-tools/tree/master/flowtools/cs_overview commit a46097db0b6056e1125237393eb6974cfd51eb41"
azomics
parents:
diff
changeset
|
212 cs_overview(args.input_file, args.input_mfi, args.mfi, args.output_file, args.output_directory, args.tool_directory, cs_files) |