def setUp(self): # Set up dirs self.dirname = os.path.dirname(os.path.abspath(__file__)) self.topdir = os.path.join(os.path.join(self.dirname, ".."), "..") self.datadir = os.path.join(os.path.join(self.topdir, "test"), "data") self.scriptdir = os.path.join(self.topdir, "analysis") # Set up files peakgroups_file = os.path.join(self.datadir, "imputeValues/imputeValues_5_input.csv") fdr_cutoff_all_pg = 1.0 # Read input reader = SWATHScoringReader.newReader([peakgroups_file], "openswath", readmethod="complete") self.exp = MRExperiment() self.exp.runs = reader.parse_files() self.multipeptides = self.exp.get_all_multipeptides(fdr_cutoff_all_pg, verbose=False) # Set up files nr2 peakgroups_file = os.path.join(self.datadir, "feature_alignment_7_openswath_input.csv") reader = SWATHScoringReader.newReader([peakgroups_file], "openswath", readmethod="complete") self.exp2 = MRExperiment() self.exp2.runs = reader.parse_files() self.multipeptides2 = self.exp2.get_all_multipeptides(fdr_cutoff_all_pg, verbose=False) # Select the best peakgroup per peptide and select it for writing out fdr_cutoff = 0.01 for mpep in self.multipeptides2: for prgr in mpep.getAllPeptides(): minpg = min( [(pg.get_fdr_score(), pg) for pg in prgr.peakgroups] ) if minpg[0] < fdr_cutoff: minpg[1].select_this_peakgroup()
def setUp(self): # Set up dirs self.dirname = os.path.dirname(os.path.abspath(__file__)) self.topdir = os.path.join(os.path.join(self.dirname, ".."), "..") self.datadir = os.path.join(os.path.join(self.topdir, "test"), "data") self.scriptdir = os.path.join(self.topdir, "analysis") # Set up files peakgroups_file = os.path.join(self.datadir, "imputeValues/imputeValues_5_input.csv") mzml_file = os.path.join(self.datadir, "imputeValues/r004_small/split_olgas_otherfile.chrom.mzML") # Parameters self.initial_alignment_cutoff = 0.0001 fdr_cutoff_all_pg = 1.0 max_rt_diff = 30 # Read input reader = SWATHScoringReader.newReader([peakgroups_file], "openswath", readmethod="complete") self.new_exp = MRExperiment() self.new_exp.runs = reader.parse_files() self.multipeptides = self.new_exp.get_all_multipeptides(fdr_cutoff_all_pg, verbose=False) # Align all against all self.tr_data = transformations.LightTransformationData() spl_aligner = SplineAligner(self.initial_alignment_cutoff) for run_0 in self.new_exp.runs: for run_1 in self.new_exp.runs: helper.addDataToTrafo(self.tr_data, run_0, run_1, spl_aligner, self.multipeptides, "linear", 30) # Select two interesting peptides pepname = "21517_C[160]NVVISGGTGSGK/2_run0 0 0" self.current_mpep1 = [m for m in self.multipeptides if m.getAllPeptides()[0].get_id() == pepname][0] pepname = "26471_GYEDPPAALFR/2_run0 0 0" self.current_mpep2 = [m for m in self.multipeptides if m.getAllPeptides()[0].get_id() == pepname][0]
def main(options): import time # Read the files start = time.time() reader = SWATHScoringReader.newReader(options.infiles, options.file_format, options.readmethod) runs = reader.parse_files(True) # Create experiment this_exp = MRExperiment() this_exp.set_runs(runs) print("Reading the input files took %ss" % (time.time() - start)) # Fix input filenames fix_input_fnames(options, runs) # Map the precursors across multiple runs, determine the number of # precursors in all runs without alignment. start = time.time() multipeptides = this_exp.get_all_multipeptides(1.0, verbose=True) print("Mapping the precursors took %ss" % (time.time() - start)) for m in multipeptides: # Error handling if somehow more than one peakgroup was selected ... for p in m.getAllPeptides(): p._fixSelectedPGError(fixMethod="BestScore") if len(m.get_selected_peakgroups()) > 0: continue for p in m.get_peptides(): if len(list(p.get_all_peakgroups())) != 1: print(p) print(dir(p)) print(p.get_run_id()) for pg in p.get_all_peakgroups(): print(pg.print_out()) print(len(list(p.get_all_peakgroups()))) assert len(list(p.get_all_peakgroups())) == 1 for pg in p.get_all_peakgroups(): pg.select_this_peakgroup() start = time.time() if len(options.matrix_outfile) > 0: write_out_matrix_file( options.matrix_outfile, this_exp.runs, multipeptides, options.min_frac_selected, style=options.output_method, write_requant=not options.remove_requant_values, aligner_mscore_treshold=options.aligner_mscore_threshold) print("Writing output took %ss" % (time.time() - start))