def run(self): """ --db_connect() --get_gene_id2gene_symbol() --get_go_id2name() --get_mcl_id2pred_go_id2gene_id_set_from_db() --get_prot_interaction_graph() --get_gene_id_set() --get_mt_no2gene_id_set() --get_go_id2gene_set_from_db() --get_mcl_id2mt_no_set() --draw_all_patterns() --draw_augmented_PI_graph() --draw_pattern() 2006-11-21 add prot_interaction_graph 2006-12-29 split draw_all_patterns() add another way to call draw_all_patterns() through pattern_id_list """ conn, curs = db_connect(self.hostname, self.dbname, self.schema) gene_id2gene_symbol = get_gene_id2gene_symbol(curs, self.tax_id) go_id2name = get_go_id2name(curs) if not os.path.isdir(self.output_dir): os.makedirs(self.output_dir) #mcl_id2pred_go_id2gene_id_set = self.get_mcl_id2pred_go_id2gene_id_set(input_fname) mcl_id2pred_go_id2gene_id_set = self.get_mcl_id2pred_go_id2gene_id_set_from_db(curs, self.input_fname, self.gene_p_table) prot_interaction_graph = self.get_prot_interaction_graph(curs, self.prot_interaction_table, self.tax_id) gene_id_set = self.get_gene_id_set(curs, self.gene_table) comp_mt_no2gene_id_set = self.get_mt_no2gene_id_set(curs, self.comp_tf_mapping_table, gene_id_set) expt_mt_no2gene_id_set = self.get_mt_no2gene_id_set(curs, self.expt_tf_mapping_table, gene_id_set) go_id2gene_set = self.get_go_id2gene_set_from_db(curs, self.go_table) comp_mcl_id2mt_no_set = self.get_mcl_id2mt_no_set(curs, self.comp_cluster_bs_table) expt_mcl_id2mt_no_set = self.get_mcl_id2mt_no_set(curs, self.expt_cluster_bs_table) for pattern_id in self.pattern_id_list: self.draw_all_patterns(curs, pattern_id, mcl_id2pred_go_id2gene_id_set, comp_mt_no2gene_id_set, \ expt_mt_no2gene_id_set, go_id2gene_set, comp_mcl_id2mt_no_set, expt_mcl_id2mt_no_set,\ self.pattern_table, self.output_dir, gene_id2gene_symbol, go_id2name, prot_interaction_graph) pattern_id = raw_input("Please input a pattern id:") while pattern_id: self.draw_all_patterns(curs, pattern_id, mcl_id2pred_go_id2gene_id_set, comp_mt_no2gene_id_set, \ expt_mt_no2gene_id_set, go_id2gene_set, comp_mcl_id2mt_no_set, expt_mcl_id2mt_no_set,\ self.pattern_table, self.output_dir, gene_id2gene_symbol, go_id2name, prot_interaction_graph) pattern_id = raw_input("Please input a pattern id:")
def run(self): """ 2006-11-15 """ conn, curs = db_connect(self.hostname, self.dbname, self.schema) if self.running_type==1: go_id2gene_set = self.get_informative_node2gene_set(self.go_fname) elif self.running_type==2: go_id2gene_set = self.get_go_id2gene_set_from_prediction_table(curs, self.p_gene_table, self.gene_p_table) go_id2name = get_go_id2name(curs) self.draw_GO_node_structure_graph(go_id2gene_set, self.fig_output_fname,\ self.sharing_threshold, label_map=go_id2name, is_to_show=0)
def run(self): """ 07-07-05 --db_connect() --get_gene_no2id() --get_go_id2name() --fetch_predicted_function() --gene_no2go_id_set_from_gene_p_table() --output() --p_go_id_set_list_distinct() """ conn, curs = db_connect(hostname, dbname) gene_no2id = get_gene_no2id(curs) go_id2name =get_go_id2name(curs) gene_no2go_id_set_list, go_id_set_list = self.fetch_predicted_function(self.schema_list,self.netmine_fname_list) self.output(curs, gene_no2go_id_set_list,go_id_set_list, support, prefix, gene_no2id, go_id2name, self.schema_list)
def run(self): """ 10-31-05 2006-09-26 modify it to be compatible with the modified pipeline from haifeng 2006-11-06 add type 2006-12-13 use font_path and font_size --form_schema_tables() --db_connect() --get_char_dimension() --get_no_of_p_funcs_gene_no_go_no_list() --get_recurrence_go_no_rec_array_cluster_id_ls() --get_go_no2name() --draw_function_map() --draw_gene_function_map() --get_recurrence_rec_array_bs_no_list() --get_mt_no2tf_name() --draw_tf_map() """ schema_instance = form_schema_tables(self.inputfname, self.acc_cutoff, self.lm_bit) (conn, curs) = db_connect(self.hostname, self.dbname, self.schema) font = ImageFont.truetype(self.font_path, self.font_size) char_dimension = font.getsize('a') #char_dimension = get_char_dimension() #go_no2name = get_go_no2name(curs) go_no2name = get_go_id2name(curs) if self.type==1: go_no2go_id = get_go_no2go_id(curs) given_p_gene_set = p_gene_id_set_from_gene_p_table(curs, schema_instance.gene_p_table) no_of_p_funcs_gene_no_go_no_list, mcl_id2go_no_set = self.get_no_of_p_funcs_gene_no_go_no_list_from_db(curs, \ schema_instance.p_gene_table, given_p_gene_set, go_no2go_id) elif self.type==2: no_of_p_funcs_gene_no_go_no_list, mcl_id2go_no_set = self.get_no_of_p_funcs_gene_no_go_no_list_from_file(self.inputfname) recurrence_go_no_rec_array_cluster_id_ls, no_of_datasets, mcl_id2enc_recurrence = \ self.get_recurrence_go_no_rec_array_cluster_id_ls(curs, self.pattern_table, mcl_id2go_no_set) no_of_functions = len(recurrence_go_no_rec_array_cluster_id_ls) function_map_output_fname = '%s.function_map.png'%self.output_prefix go_no2index, function_name_region = self.draw_function_map(recurrence_go_no_rec_array_cluster_id_ls, no_of_datasets,\ go_no2name, function_map_output_fname, self.function_name_length, char_dimension, no_of_functions, font) gene_function_map_output_fname = '%s.gene_function_map.png'%self.output_prefix self.draw_gene_function_map(no_of_p_funcs_gene_no_go_no_list, go_no2index, function_name_region,\ gene_function_map_output_fname, self.function_name_length, char_dimension, no_of_functions, font) #tf_map requires mcl_id2enc_recurrence and no_of_datasets from above recurrence_rec_array_bs_no_list = self.get_recurrence_rec_array_bs_no_list(curs, self.cluster_bs_table, mcl_id2enc_recurrence) mt_no2tf_name = get_gene_id2gene_symbol(curs, tax_id=9606) #mt_no2tf_name = get_mt_no2tf_name() tf_map_output_fname = '%s.tf_map.png'%self.output_prefix self.draw_tf_map(recurrence_rec_array_bs_no_list, no_of_datasets, mt_no2tf_name, \ tf_map_output_fname, self.function_name_length, char_dimension, font)