adding default dirs and filenames to argparse in foldx and mcsm

This commit is contained in:
Tanushree Tunstall 2020-07-09 12:57:08 +01:00
parent 6402990154
commit f8e345f5bc
3 changed files with 35 additions and 28 deletions

View file

@ -29,16 +29,16 @@ os.getcwd()
#%% command line args #%% command line args
arg_parser = argparse.ArgumentParser() arg_parser = argparse.ArgumentParser()
arg_parser.add_argument('-d', '--drug', help = 'drug name', default = 'pyrazinamide') arg_parser.add_argument('-d', '--drug', help = 'drug name', default = None)
arg_parser.add_argument('-g', '--gene', help = 'gene name', default = 'pncA') # case sensitive arg_parser.add_argument('-g', '--gene', help = 'gene name (case sensitive)', default = None)
arg_parser.add_argument('--datadir', help = 'Data Directory. By default, it assmumes homedir + git/Data')
arg_parser.add_argument('-i', '--input_dir', help = 'Input dir containing pdb files. By default, it assmumes homedir + <drug> + input')
arg_parser.add_argument('-o', '--output_dir', help = 'Output dir for results. By default, it assmes homedir + <drug> + output')
arg_parser.add_argument('-i', '--input_dir', help = 'Input dir containing pdb files. By default, it assmumes homedir + drug + input', default = None) arg_parser.add_argument('-pdb', '--pdb_file', help = 'PDB File to process. By default, it assmumes a file called <gene>_complex.pdb in input_dir')
arg_parser.add_argument('-o', '--output_dir', help = 'Output dir for results. By default, it assmes homedir + drug + output', default = None) arg_parser.add_argument('-m', '--mutation_file', help = 'Mutation list. By default, assumes a file called <gene>_snps.csv exists')
arg_parser.add_argument('-f', '--pdb_file', help = 'PDB File to process. By default, it assmumes a file called <gene>_complex.pdb', default = None)
arg_parser.add_argument('-m', '--mutation_file', help = 'Mutation list. By default, assumes a file called <gene>_snps.csv exists', default = None)
arg_parser.add_argument('-c1', '--chain1', help = 'Chain1 ID', default = 'A') # case sensitive arg_parser.add_argument('-c1', '--chain1', help = 'Chain1 ID', default = 'A') # case sensitive
arg_parser.add_argument('-c2', '--chain2', help = 'Chain2 ID', default = 'B') # case sensitive arg_parser.add_argument('-c2', '--chain2', help = 'Chain2 ID', default = 'B') # case sensitive
@ -53,8 +53,11 @@ args = arg_parser.parse_args()
# Command Line Options # Command Line Options
drug = args.drug drug = args.drug
gene = args.gene gene = args.gene
data_dir = args.data_dir
indir = args.input_dir indir = args.input_dir
outdir = args.output_dir outdir = args.output_dir
mut_filename = args.mutation_file mut_filename = args.mutation_file
chainA = args.chain1 chainA = args.chain1
chainB = args.chain2 chainB = args.chain2
@ -68,13 +71,17 @@ pdb_filename = args.pdb_file
#========== #==========
# dir # dir
#========== #==========
datadir = homedir + '/' + 'git/Data' if data_dir:
datadir = data_dir
else:
datadir = homedir + '/' + 'git/Data'
if not indir: if not indir:
indir = datadir + '/' + drug + '/' + 'input' indir = datadir + '/' + drug + '/' + 'input'
if not outdir: if not outdir:
outdir = datadir + '/' + drug + '/' + 'output' outdir = datadir + '/' + drug + '/' + 'output'
# FIXME: this is a temporary directory and should be correctly handled # FIXME: this is a temporary directory and should be correctly handled
process_dir = datadir + '/' + drug +'/' + 'processing' process_dir = datadir + '/' + drug +'/' + 'processing'
@ -96,8 +103,7 @@ actual_pdb_filename = Path(infile_pdb).name
if mut_filename: if mut_filename:
mutation_file = mut_filename mutation_file = mut_filename
else: else:
mutation_file = gene.lower() + '_mcsm_snps.csv' #real mutation_file = gene.lower() + '_mcsm_snps.csv'
#mutation_file = gene.lower() + '_test_snps.csv' #test
infile_muts = outdir + '/' + mutation_file infile_muts = outdir + '/' + mutation_file

View file

@ -373,7 +373,7 @@ def format_mcsm_output(mcsm_outputcsv):
#%%===================================================================== #%%=====================================================================
############# #############
# adding column: wild_position # adding column: wild_pos
# useful for plots and db # useful for plots and db
############# #############
print('Creating column: wild_pos') print('Creating column: wild_pos')

View file

@ -17,7 +17,7 @@ arg_parser.add_argument('-U', '--url', help='mCSM Server URL', default = 'ht
arg_parser.add_argument('-c', '--chain', help='Chain ID as per PDB, Case sensitive', default = 'A') arg_parser.add_argument('-c', '--chain', help='Chain ID as per PDB, Case sensitive', default = 'A')
arg_parser.add_argument('-l','--ligand', help='Ligand ID as per PDB, Case sensitive. REQUIRED only in "submit" stage') arg_parser.add_argument('-l','--ligand', help='Ligand ID as per PDB, Case sensitive. REQUIRED only in "submit" stage')
arg_parser.add_argument('-a','--affinity', help='Affinity in nM', default = 0.99) arg_parser.add_argument('-a','--affinity', help='Affinity in nM', default = 0.99)
#arg_parser.add_argument('-p','--pdb_file', help = 'PDB File') arg_parser.add_argument('-pdb','--pdb_file', help = 'PDB File')
arg_parser.add_argument('--datadir', help = 'Data Directory') arg_parser.add_argument('--datadir', help = 'Data Directory')
arg_parser.add_argument('--debug', action='store_true', help = 'Debug Mode') arg_parser.add_argument('--debug', action='store_true', help = 'Debug Mode')
@ -29,8 +29,8 @@ stage = args.stage
chain = args.chain chain = args.chain
ligand = args.ligand ligand = args.ligand
affinity = args.affinity affinity = args.affinity
#pdb_file = args.pdb_file pdb_filename = args.pdb_file
datadir = args.datadir data_dir = args.data_dir
DEBUG = args.debug DEBUG = args.debug
# Actual Globals :-) # Actual Globals :-)
@ -48,19 +48,21 @@ homedir = os.path.expanduser('~')
#os.chdir(homedir + '/git/LSHTM_analysis/mcsm') #os.chdir(homedir + '/git/LSHTM_analysis/mcsm')
gene_match = gene + '_p.' gene_match = gene + '_p.'
if datadir: if data_dir:
basedir = datadir datadir = data_dir
else: else:
basedir = homedir + '/git/Data' datadir = homedir + '/git/Data'
indir = basedir + '/' + drug + '/' + 'input' indir = datadir + '/' + drug + '/' + 'input'
outdir = basedir + '/' + drug + '/' + 'output' outdir = datadir + '/' + drug + '/' + 'output'
in_filename_pdb = gene.lower() + '_complex.pdb' if pdb_filename:
in_filename_pdb = pdb_filename
else:
in_filename_pdb = gene.lower() + '_complex.pdb'
infile_pdb = indir + '/' + in_filename_pdb infile_pdb = indir + '/' + in_filename_pdb
#in_filename_snps = gene.lower() + '_mcsm_snps_test.csv'
in_filename_snps = gene.lower() + '_mcsm_snps.csv' #(outfile_mcsm_snps, from data_extraction.py) in_filename_snps = gene.lower() + '_mcsm_snps.csv' #(outfile_mcsm_snps, from data_extraction.py)
infile_snps = outdir + '/' + in_filename_snps infile_snps = outdir + '/' + in_filename_snps
@ -83,11 +85,10 @@ if DEBUG:
print('DEBUG: formatted CSV output:', outfile_format) print('DEBUG: formatted CSV output:', outfile_format)
#%%===================================================================== #%%=====================================================================
def submit_mcsm(): def submit_mcsm():
# Example:
# Example: # chain = 'A'
# chain = 'A' # ligand_id = 'RMP'
# ligand_id = 'RMP' # affinity = 10
# affinity = 10
print('Result urls and error file (if any) will be written in: ', outdir) print('Result urls and error file (if any) will be written in: ', outdir)