From 20de58ba55ecb36fb8eb1529f263b1ee5c9f2d08 Mon Sep 17 00:00:00 2001 From: Hui Lan Date: Thu, 18 Feb 2021 13:35:33 +0800 Subject: make_target_tf.py and param4net.py: add an option EXISTING_TARGET_TF_PAIRS in parameter_for_net.txt to specify locations of existing Target-TF pairs. --- Code/make_target_tf.py | 43 +++++++++++++++++-------------------------- Code/param4net.py | 2 +- 2 files changed, 18 insertions(+), 27 deletions(-) (limited to 'Code') diff --git a/Code/make_target_tf.py b/Code/make_target_tf.py index 06bc769..cb1775b 100644 --- a/Code/make_target_tf.py +++ b/Code/make_target_tf.py @@ -240,32 +240,22 @@ def target_tf(bind_dict, bind_info_dict, input_dict, glb_param_dict): # d has the following format {target:{tf1:[c1,c2], tf2:[c2,c3]}, ... } # augment d with information from ../Data/information/target_tf_agris.txt and ../Data/information/target_tf.txt.20170629_143000 - if os.path.exists('../Data/information/target_tf_agris.txt'): - f = open('../Data/information/target_tf_agris.txt') - lines = f.readlines() - f.close() - for line in lines: - line = line.strip() - lst = line.split('\t') - if len(lst) == 3: - target0 = lst[0] - tf0 = lst[1] - cond_lst0 = lst[2].split() - augment_dict(d, target0, tf0, cond_lst0) - - if os.path.exists('../Data/information/target_tf.txt.20170629_143000'): - f = open('../Data/information/target_tf.txt.20170629_143000') - lines = f.readlines() - f.close() - for line in lines: - line = line.strip() - lst = line.split('\t') - if len(lst) == 3: - target0 = lst[0] - tf0 = lst[1] - cond_lst0 = lst[2].split() - augment_dict(d, target0, tf0, cond_lst0) - + if glb_param_dict['EXISTING_TARGET_TF_PAIRS'] != None: + target_tf_file_lst = glb_param_dict['EXISTING_TARGET_TF_PAIRS'].split() + for existing_target_tf_file in target_tf_file_lst: + if os.path.exists(existing_target_tf_file): + f = open(existing_target_tf_file) + lines = f.readlines() + f.close() + for line in lines: + line = line.strip() + lst = line.split('\t') + if len(lst) == 3: + target0 = lst[0] + tf0 = lst[1] + cond_lst0 = lst[2].split() + augment_dict(d, target0, tf0, cond_lst0) + for target in sorted(d.keys()): tf_d = d[target] if len(tf_d) > 0: @@ -279,6 +269,7 @@ def target_tf(bind_dict, bind_info_dict, input_dict, glb_param_dict): ########## main ################################################## param_file = sys.argv[1] # a single prameter file parameter_for_net.txt glb_param_dict = make_global_param_dict(param_file) + #print('Read binding data ...') bind_dict = read_matrix_data(glb_param_dict['BINDING_MATRIX']) bind_info_dict = read_info_data(glb_param_dict['BINDING_INFO']) diff --git a/Code/param4net.py b/Code/param4net.py index a68e7e3..eccc540 100644 --- a/Code/param4net.py +++ b/Code/param4net.py @@ -11,7 +11,7 @@ def get_key_value(s): def make_global_param_dict(fname): f = open(fname) - d = {'GENE_LIST':'', 'HIGH_PRIORITY_GENE':'', 'BINDING_MATRIX':'', 'INPUT_MATRIX':'', 'EXPRESSION_MATRIX':'', 'BINDING_INFO':'', 'EXPRESSION_INFO':'', 'RESEARCH_KEYWORDS':'', 'USER_CONDITION_LIST':[], 'LOOK_FOR_POS_CORRELATION':'NO', 'LOOK_FOR_NEG_CORRELATION':'NO', 'MAKE_PLOT':'NO', 'TWO_WAY':'YES', 'THREE_WAY':'NO', 'TARGET_RANGE':'1000', 'FC':'2.0', 'PVALUE':'0.0001', 'QVALUE':'0.01', 'CHRINFO':{'1':30427671, '2':19698289, '3':23459830, '4':18585056, '5':26975502, 'Mt':366924, 'Pt':154478}, 'SELECT_POINTS_DIAGONAL_MAX_DIFF':0.25} # change + d = {'GENE_LIST':'', 'HIGH_PRIORITY_GENE':'', 'BINDING_MATRIX':'', 'INPUT_MATRIX':'', 'EXPRESSION_MATRIX':'', 'BINDING_INFO':'', 'EXPRESSION_INFO':'', 'RESEARCH_KEYWORDS':'', 'USER_CONDITION_LIST':[], 'LOOK_FOR_POS_CORRELATION':'NO', 'LOOK_FOR_NEG_CORRELATION':'NO', 'MAKE_PLOT':'NO', 'TWO_WAY':'YES', 'THREE_WAY':'NO', 'TARGET_RANGE':'1000', 'FC':'2.0', 'PVALUE':'0.0001', 'QVALUE':'0.01', 'CHRINFO':{'1':30427671, '2':19698289, '3':23459830, '4':18585056, '5':26975502, 'Mt':366924, 'Pt':154478}, 'SELECT_POINTS_DIAGONAL_MAX_DIFF':0.25, 'EXISTING_TARGET_TF_PAIRS':None} # change for line in f: line = line.strip() if line.startswith(GLB_PARAM_SYMBOL): -- cgit v1.2.1