def OnClick_run(self, event): graph1 = self.inputTxtNetwork1.GetValue().strip() graph2 = self.inputTxtNetwork2.GetValue().strip() mapping_name = self.inputTxtMapping.GetValue().strip() true_mapping_name = self.inputTxtTrueMapping.GetValue().strip() goterm_name1 = self.inputTxtGo1.GetValue().strip() goterm_name2 = self.inputTxtGo2.GetValue().strip() eval_NC_P = self.checkbox_NC_P.GetValue() eval_NC_R = self.checkbox_NC_R.GetValue() eval_NC_F = self.checkbox_NC_F.GetValue() eval_NCV = self.checkbox_NCV.GetValue() eval_GS3 = self.checkbox_GS3.GetValue() eval_NCV_GS3 = self.checkbox_NCV_GS3.GetValue() eval_GC = self.checkbox_GC.GetValue() eval_PF_P = self.checkbox_PF_P.GetValue() eval_PF_R = self.checkbox_PF_R.GetValue() eval_PF_F = self.checkbox_PF_F.GetValue() if eval_NC_P == True or eval_NC_R == True or eval_NC_F == True: if true_mapping_name == "": self.MessageBox("Known mapping file must be provided!") return if os.path.isfile(true_mapping_name) == False: self.MessageBox("Known mapping file '" + true_mapping_name + "' does not exist!") return if eval_GC == True or eval_PF_P == True or eval_PF_R == True or eval_PF_F == True: if goterm_name1 == "": self.MessageBox("GO terms 1 file must be provided!") return #print eval_NC_P,eval_NC_R,eval_NC_F, eval_NCV, eval_GS3, eval_NCV_GS3, eval_GC, eval_PF_P, eval_PF_R, eval_PF_F quality = Evaluation.AlignmentQuality(graph1, graph2, mapping_name, true_mapping_name, goterm_name1, goterm_name2); self.result = quality.evaluate(eval_NC_P, eval_NC_R, eval_NC_F, eval_GS3, eval_NCV, eval_NCV_GS3, eval_GC, eval_PF_P, eval_PF_R, eval_PF_F) self.list.DeleteAllItems() lineIdx = 0 for key in self.measures: if key in self.result: value = self.result[key] pos = self.list.InsertStringItem(lineIdx,key) self.list.SetStringItem(pos,1,str(value)) lineIdx = lineIdx + 1 if self.result == None: self.btnSave.Disable() else: self.btnSave.Enable()
eval_NCV = False eval_NCV_GS3 = False eval_GC = False eval_PF_P = False eval_PF_R = False eval_PF_F = False network_dir = "../../test_nets/" num = 0 results = {} graph1 = "../../krogan_2007_adj_list_random.gw" # mapping_name = "../../krogan_2007_adj_mat_random_vs_yeast+10rw_0_alignment.aln" mapping_name = "../../krogan_2007_adj_mat_random_vs_yeast+10rw_1_alignment.csv" f = open("results.csv", "w+") for file in os.listdir(network_dir): if file.endswith(".gw"): graph2 = os.path.join(network_dir, file) # mapping_name = quality = Evaluation.AlignmentQuality(graph1, graph2, mapping_name, true_mapping_name, goterm_name1, goterm_name2) score = quality.evaluate(eval_NC_P, eval_NC_R, eval_NC_F, eval_GS3, eval_NCV, eval_NCV_GS3, eval_GC, eval_PF_P, eval_PF_R, eval_PF_F) print(score) results[file] = score f.write(file + "," + str(score["GS3"]) + "\n") num = num + 1 print num print results