LSHTM_analysis/mcsm_na/run_format_results_mcsm_na.py

78 lines
2.9 KiB
Python
Executable file

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Created on Fri Feb 12 12:15:26 2021
@author: tanu
"""
#%% load packages
import os
homedir = os.path.expanduser('~')
os.chdir (homedir + '/git/LSHTM_analysis/mcsm_na')
from format_results_mcsm_na import *
########################################################################
#%% command line args
arg_parser = argparse.ArgumentParser()
arg_parser.add_argument('-d', '--drug' , help = 'drug name (case sensitive)', default = None)
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('--mkdir_name' , help = 'Output dir for processed results. This will be created if it does not exist')
arg_parser.add_argument('-m', '--make_dirs' , help = 'Make dir for input and output', action='store_true')
arg_parser.add_argument('--debug' , action = 'store_true' , help = 'Debug Mode')
args = arg_parser.parse_args()
#%%============================================================================
# variable assignment: input and output paths & filenames
drug = args.drug
gene = args.gene
datadir = args.datadir
indir = args.input_dir
outdir = args.output_dir
#outdir_ppi2 = args.mkdir_name
make_dirs = args.make_dirs
#=======
# dirs
#=======
if not datadir:
datadir = homedir + '/git/Data/'
if not indir:
indir = datadir + drug + '/input/'
if not outdir:
outdir = datadir + drug + '/output/'
#if not mkdir_name:
# outdir_na = outdir + 'mcsm_na_results/'
outdir_na = outdir + 'mcsm_na_results/'
# Input file
infile_mcsm_na = outdir_na + gene.lower() + '_output_combined_clean.tsv'
# Formatted output file
outfile_mcsm_na_f = outdir_na + gene.lower() + '_complex_mcsm_na_norm.csv'
#===========================================
# CALL: format_results_mcsm_na()
# Data: gid+streptomycin
# Data: rpob+rifampicin, date: 18/11/2021
#===========================================
print('Formatting results for:', infile_mcsm_na)
mcsm_na_df_f = format_mcsm_na_output(mcsm_na_output_tsv = infile_mcsm_na)
# writing file
print('Writing formatted df to csv')
mcsm_na_df_f.to_csv(outfile_mcsm_na_f, index = False)
print('Finished writing file:'
, '\nFile:', outfile_mcsm_na_f
, '\nExpected no. of rows:', len(mcsm_na_df_f)
, '\nExpected no. of cols:', len(mcsm_na_df_f.columns)
, '\n=============================================================')
#%%#####################################################################