diff options
author | Pjotr Prins | 2021-01-04 08:58:38 +0000 |
---|---|---|
committer | Pjotr Prins | 2021-01-04 08:58:38 +0000 |
commit | 1c4e055b8a9dc53b7fdbdf12d4b0a7e877fbc2ef (patch) | |
tree | 34cc42ef12b81c05be8a57ca2a973b97e52f8461 /workflows/pull-data/genbank/transform-genbank-xml2yamlfa.py | |
parent | ba4161b1660c3a67090dd3715e9862906fb1cc5f (diff) | |
download | bh20-seq-resource-1c4e055b8a9dc53b7fdbdf12d4b0a7e877fbc2ef.tar.gz bh20-seq-resource-1c4e055b8a9dc53b7fdbdf12d4b0a7e877fbc2ef.tar.lz bh20-seq-resource-1c4e055b8a9dc53b7fdbdf12d4b0a7e877fbc2ef.zip |
Started on normalization
Diffstat (limited to 'workflows/pull-data/genbank/transform-genbank-xml2yamlfa.py')
-rwxr-xr-x | workflows/pull-data/genbank/transform-genbank-xml2yamlfa.py | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/workflows/pull-data/genbank/transform-genbank-xml2yamlfa.py b/workflows/pull-data/genbank/transform-genbank-xml2yamlfa.py index ebdf17e..9414864 100755 --- a/workflows/pull-data/genbank/transform-genbank-xml2yamlfa.py +++ b/workflows/pull-data/genbank/transform-genbank-xml2yamlfa.py @@ -1,18 +1,17 @@ #!/usr/bin/env python3 # -# Create a single YAML/FASTA from genbank XML +# Create a single YAML/FASTA for each genbank entry in GenBank XML file # # transform-genbank-xml2yamlfa --out ~/tmp/pubseq file(s) # # Also writes a validation file in the outdir named state.json -# -# Where --in can be a file or a directory # ---------------------------------------------------------------------- # See also directory .guix-run and README.md import argparse import gzip +import json import os import sys import types @@ -47,6 +46,12 @@ for xmlfn in args.files: try: valid,meta = genbank.get_metadata(id,gb) if valid: + # --- write JSON + jsonfn = basename + ".json" + with open(jsonfn, 'w') as outfile: + print(f" writing {jsonfn}") + json.dump(meta, outfile, indent=4) + # --- write FASTA fa = basename+".fa" seq = genbank.get_sequence(id,gb) print(f" writing {fa}") @@ -66,4 +71,7 @@ for xmlfn in args.files: state['warnings'] = meta['warnings'] states[id] = state -print(states) +statefn = dir + '/state.json' +with open(statefn, 'w') as outfile: + print(f" Writing {statefn}") + json.dump(states, outfile, indent=4) |