def get_peak_group_values(pg, rt, ref_pg): pg_best = data_holder.NestedDict() pg_best['peak_rt'] = rt # use peak width from ref_pg to compute the boundary of this peak group ref_pg_width = ref_pg['rt_right'] - ref_pg['rt_left'] pg_best['rt_left'], pg_best['rt_right'] = get_boundary_for_pg_best(pg, rt, ref_pg_width) for fragment in pg[rt]['ms2']['rt_list'].keys(): # get the rt and i list only for the peak group pg_best['ms2']['rt_list'][fragment], pg_best['ms2']['i_list'][fragment] = \ chrom.get_chrom_range(pg_best['rt_left'], pg_best['rt_right'], pg[rt]['ms2']['rt_list'][fragment], pg[rt]['ms2']['i_list'][fragment]) pg_best['ms2']['peak_apex_i'][fragment], pg_best['ms2']['if_found_peak'][fragment] = get_fragment_intensity_for_peak_group( pg[rt]['ms2']['peak_apex_rt_list'][fragment], pg[rt]['ms2']['peak_apex_i_list'][fragment], rt) # get the rt and i list only for the peak group pg_best['ms1']['rt_list'], pg_best['ms1']['i_list'] = \ chrom.get_chrom_range( pg_best['rt_left'], pg_best['rt_right'], pg[rt]['ms1']['rt_list'], pg[rt]['ms1']['i_list']) pg_best['ms1']['peak_apex_i'], pg_best['ms1']['if_found_peak'] = get_fragment_intensity_for_peak_group( pg[rt]['ms1']['peak_apex_rt_list'], pg[rt]['ms1']['peak_apex_i_list'], rt) return pg_best
def check_if_the_top1_fragment_is_good_in_ref_sample(pg, ref_pg): # check the top1 fragment is a good one, otherwise, remove it top1 = find_top_n_fragment(1, ref_pg) # ref_pg_rt_apex = ref_pg['peak_rt'] ref_pg_rt_left = ref_pg['rt_left'] ref_pg_rt_right = ref_pg['rt_right'] top1_rt_list = ref_pg['ms2']['rt_list'][top1] top1_i_list = ref_pg['ms2']['i_list'][top1] top1_rt_list_in_range, top1_i_list_in_range = \ chrom.get_chrom_range(ref_pg_rt_left, ref_pg_rt_right, top1_rt_list, top1_i_list) if_ref_good = dia_quant.check_if_displayed_peak_a_good_one(top1_rt_list, top1_i_list, 1, 3) return if_ref_good
def check_if_top1_fragment_good_in_this_pg(pg, ref_pg, if_top1_fragment_good_in_ref_sample, rt): if_top1_fragment_good_in_this_pg = 1 if if_top1_fragment_good_in_ref_sample == 0: if_top1_fragment_good_in_this_pg = 0 else: top1 = find_top_n_fragment(1, ref_pg) top1_rt_list = pg[rt]['ms2']['rt_list'][top1] top1_i_list = pg[rt]['ms2']['i_list'][top1] ref_pg_width = ref_pg['rt_right'] - ref_pg['rt_left'] pg_rt_left, pg_rt_right = get_boundary_for_pg_best(pg, rt, ref_pg_width) top1_rt_list_in_range, top1_i_list_in_range = \ chrom.get_chrom_range(pg_rt_left, pg_rt_right, top1_rt_list, top1_i_list) if_top1_fragment_good_in_this_pg = dia_quant.check_if_displayed_peak_a_good_one( top1_rt_list, top1_i_list, 1, 3) return if_top1_fragment_good_in_this_pg