Mercurial > repos > melissacline > xena_import
view xena_import.py @ 9:a2a7096897a8
FIXED the xena import process
author | melissacline |
---|---|
date | Mon, 08 Sep 2014 13:26:21 -0700 |
parents | 8d87f0ecc08d |
children | 7f03b062f330 |
line wrap: on
line source
#!/usr/bin/env python """ xena_import.py: import a dataset into Xena Given a cmdline-specified genomic data file and a cmdline-specified Xena directory, import the genomic data fle into Xena. This requires assembling the necessary json file, based on cmdline input. """ import argparse import json import os import shutil def main(): parser = argparse.ArgumentParser() parser.add_argument("genomicDataPathname", type=str) parser.add_argument("cohort", type=str) parser.add_argument("type", type=str) args = parser.parse_args() xenaBaseDir = os.getenv("XENA_BASE_DIR", "~") xenaFileDir = xenaBaseDir + "/files" # Assemble the metadata in JSON format metadata = { 'cohort': args.cohort, 'type': args.type } jsonMetadata = json.dumps(metadata, indent=2) # Write the metadata to a file in the Xena directory. Use the filename # of the genomic data file, with an added .json extension. genomicDataFilename = args.genomicDataPathname.split("/")[-1] jsonMetadataPathname = "%s/%s.json" % (xenaFileDir, genomicDataFilename) #fp = open("/inside/home/cline/tmp/xena_import.out", "w") #fp.write("xena file dir %s\n" % (xenaFileDir)) #fp.write("copying metadata to %s and data to %s" % (jsonMetadataPathname, # xenaFileDir)) #fp.close() fp = open(jsonMetadataPathname, "w") fp.write("%s\n" % (jsonMetadata)) fp.close() # Finally, copy the genomic data into the Xena directory shutil.copy(args.genomicDataPathname, xenaFileDir) if __name__ == "__main__": main()