Mercurial > repos > bebatut > humann2_reduce_table
annotate transform_json_to_pkl.py @ 4:1f0b424bbedc draft
planemo upload for repository https://github.com/ASaiM/galaxytools/tree/master/tools/humann2/ commit b'adf695285ea7366d6c5d48e416c4e00d83b9e733\n'-dirty
author | bebatut |
---|---|
date | Thu, 02 Mar 2017 09:27:45 -0500 |
parents | abe72aa5a8b9 |
children |
rev | line source |
---|---|
0
abe72aa5a8b9
planemo upload for repository https://github.com/ASaiM/galaxytools/tree/master/tools/humann2/ commit b'f126d56aa160b10437d9dabf5c9e32fd4569fee6\n'-dirty
bebatut
parents:
diff
changeset
|
1 #!/usr/bin/env python |
abe72aa5a8b9
planemo upload for repository https://github.com/ASaiM/galaxytools/tree/master/tools/humann2/ commit b'f126d56aa160b10437d9dabf5c9e32fd4569fee6\n'-dirty
bebatut
parents:
diff
changeset
|
2 # -*- coding: utf-8 -*- |
abe72aa5a8b9
planemo upload for repository https://github.com/ASaiM/galaxytools/tree/master/tools/humann2/ commit b'f126d56aa160b10437d9dabf5c9e32fd4569fee6\n'-dirty
bebatut
parents:
diff
changeset
|
3 |
abe72aa5a8b9
planemo upload for repository https://github.com/ASaiM/galaxytools/tree/master/tools/humann2/ commit b'f126d56aa160b10437d9dabf5c9e32fd4569fee6\n'-dirty
bebatut
parents:
diff
changeset
|
4 import argparse |
abe72aa5a8b9
planemo upload for repository https://github.com/ASaiM/galaxytools/tree/master/tools/humann2/ commit b'f126d56aa160b10437d9dabf5c9e32fd4569fee6\n'-dirty
bebatut
parents:
diff
changeset
|
5 import bz2 |
abe72aa5a8b9
planemo upload for repository https://github.com/ASaiM/galaxytools/tree/master/tools/humann2/ commit b'f126d56aa160b10437d9dabf5c9e32fd4569fee6\n'-dirty
bebatut
parents:
diff
changeset
|
6 import cPickle as pickle |
abe72aa5a8b9
planemo upload for repository https://github.com/ASaiM/galaxytools/tree/master/tools/humann2/ commit b'f126d56aa160b10437d9dabf5c9e32fd4569fee6\n'-dirty
bebatut
parents:
diff
changeset
|
7 import json |
abe72aa5a8b9
planemo upload for repository https://github.com/ASaiM/galaxytools/tree/master/tools/humann2/ commit b'f126d56aa160b10437d9dabf5c9e32fd4569fee6\n'-dirty
bebatut
parents:
diff
changeset
|
8 |
abe72aa5a8b9
planemo upload for repository https://github.com/ASaiM/galaxytools/tree/master/tools/humann2/ commit b'f126d56aa160b10437d9dabf5c9e32fd4569fee6\n'-dirty
bebatut
parents:
diff
changeset
|
9 |
abe72aa5a8b9
planemo upload for repository https://github.com/ASaiM/galaxytools/tree/master/tools/humann2/ commit b'f126d56aa160b10437d9dabf5c9e32fd4569fee6\n'-dirty
bebatut
parents:
diff
changeset
|
10 def transform_json_to_pkl(args): |
abe72aa5a8b9
planemo upload for repository https://github.com/ASaiM/galaxytools/tree/master/tools/humann2/ commit b'f126d56aa160b10437d9dabf5c9e32fd4569fee6\n'-dirty
bebatut
parents:
diff
changeset
|
11 with open(args.json_input, 'r') as json_file: |
abe72aa5a8b9
planemo upload for repository https://github.com/ASaiM/galaxytools/tree/master/tools/humann2/ commit b'f126d56aa160b10437d9dabf5c9e32fd4569fee6\n'-dirty
bebatut
parents:
diff
changeset
|
12 json_str = json_file.read() |
abe72aa5a8b9
planemo upload for repository https://github.com/ASaiM/galaxytools/tree/master/tools/humann2/ commit b'f126d56aa160b10437d9dabf5c9e32fd4569fee6\n'-dirty
bebatut
parents:
diff
changeset
|
13 metadata = json.loads(json_str) |
abe72aa5a8b9
planemo upload for repository https://github.com/ASaiM/galaxytools/tree/master/tools/humann2/ commit b'f126d56aa160b10437d9dabf5c9e32fd4569fee6\n'-dirty
bebatut
parents:
diff
changeset
|
14 |
abe72aa5a8b9
planemo upload for repository https://github.com/ASaiM/galaxytools/tree/master/tools/humann2/ commit b'f126d56aa160b10437d9dabf5c9e32fd4569fee6\n'-dirty
bebatut
parents:
diff
changeset
|
15 for marker in metadata["markers"]: |
abe72aa5a8b9
planemo upload for repository https://github.com/ASaiM/galaxytools/tree/master/tools/humann2/ commit b'f126d56aa160b10437d9dabf5c9e32fd4569fee6\n'-dirty
bebatut
parents:
diff
changeset
|
16 a_set = set(metadata["markers"][marker]["ext"]) |
abe72aa5a8b9
planemo upload for repository https://github.com/ASaiM/galaxytools/tree/master/tools/humann2/ commit b'f126d56aa160b10437d9dabf5c9e32fd4569fee6\n'-dirty
bebatut
parents:
diff
changeset
|
17 metadata["markers"][marker]["ext"] = a_set |
abe72aa5a8b9
planemo upload for repository https://github.com/ASaiM/galaxytools/tree/master/tools/humann2/ commit b'f126d56aa160b10437d9dabf5c9e32fd4569fee6\n'-dirty
bebatut
parents:
diff
changeset
|
18 |
abe72aa5a8b9
planemo upload for repository https://github.com/ASaiM/galaxytools/tree/master/tools/humann2/ commit b'f126d56aa160b10437d9dabf5c9e32fd4569fee6\n'-dirty
bebatut
parents:
diff
changeset
|
19 pkl_output = bz2.BZ2File(args.pkl_output, 'w') |
abe72aa5a8b9
planemo upload for repository https://github.com/ASaiM/galaxytools/tree/master/tools/humann2/ commit b'f126d56aa160b10437d9dabf5c9e32fd4569fee6\n'-dirty
bebatut
parents:
diff
changeset
|
20 pickle.dump(metadata, pkl_output, pickle.HIGHEST_PROTOCOL) |
abe72aa5a8b9
planemo upload for repository https://github.com/ASaiM/galaxytools/tree/master/tools/humann2/ commit b'f126d56aa160b10437d9dabf5c9e32fd4569fee6\n'-dirty
bebatut
parents:
diff
changeset
|
21 pkl_output.close() |
abe72aa5a8b9
planemo upload for repository https://github.com/ASaiM/galaxytools/tree/master/tools/humann2/ commit b'f126d56aa160b10437d9dabf5c9e32fd4569fee6\n'-dirty
bebatut
parents:
diff
changeset
|
22 |
abe72aa5a8b9
planemo upload for repository https://github.com/ASaiM/galaxytools/tree/master/tools/humann2/ commit b'f126d56aa160b10437d9dabf5c9e32fd4569fee6\n'-dirty
bebatut
parents:
diff
changeset
|
23 |
abe72aa5a8b9
planemo upload for repository https://github.com/ASaiM/galaxytools/tree/master/tools/humann2/ commit b'f126d56aa160b10437d9dabf5c9e32fd4569fee6\n'-dirty
bebatut
parents:
diff
changeset
|
24 if __name__ == '__main__': |
abe72aa5a8b9
planemo upload for repository https://github.com/ASaiM/galaxytools/tree/master/tools/humann2/ commit b'f126d56aa160b10437d9dabf5c9e32fd4569fee6\n'-dirty
bebatut
parents:
diff
changeset
|
25 parser = argparse.ArgumentParser() |
abe72aa5a8b9
planemo upload for repository https://github.com/ASaiM/galaxytools/tree/master/tools/humann2/ commit b'f126d56aa160b10437d9dabf5c9e32fd4569fee6\n'-dirty
bebatut
parents:
diff
changeset
|
26 parser.add_argument('--json_input', required=True) |
abe72aa5a8b9
planemo upload for repository https://github.com/ASaiM/galaxytools/tree/master/tools/humann2/ commit b'f126d56aa160b10437d9dabf5c9e32fd4569fee6\n'-dirty
bebatut
parents:
diff
changeset
|
27 parser.add_argument('--pkl_output', required=True) |
abe72aa5a8b9
planemo upload for repository https://github.com/ASaiM/galaxytools/tree/master/tools/humann2/ commit b'f126d56aa160b10437d9dabf5c9e32fd4569fee6\n'-dirty
bebatut
parents:
diff
changeset
|
28 args = parser.parse_args() |
abe72aa5a8b9
planemo upload for repository https://github.com/ASaiM/galaxytools/tree/master/tools/humann2/ commit b'f126d56aa160b10437d9dabf5c9e32fd4569fee6\n'-dirty
bebatut
parents:
diff
changeset
|
29 |
abe72aa5a8b9
planemo upload for repository https://github.com/ASaiM/galaxytools/tree/master/tools/humann2/ commit b'f126d56aa160b10437d9dabf5c9e32fd4569fee6\n'-dirty
bebatut
parents:
diff
changeset
|
30 transform_json_to_pkl(args) |