Source code for extract_ion_chromatogram

#!/usr/bin/env python

import os

import pymzml


[docs] def main(): """ Demonstration of the extraction of a specific ion chromatogram, i.e. XIC or EIC All intensities and m/z values for a target m/z are extracted. usage: ./extract_ion_chromatogram.py """ example_file = os.path.join( os.path.dirname(__file__), os.pardir, "tests", "data", "example.mzML" ) run = pymzml.run.Reader(example_file) time_dependent_intensities = [] MZ_2_FOLLOW = 70.06575775 for spectrum in run: if spectrum.ms_level == 1: has_peak_matches = spectrum.has_peak(MZ_2_FOLLOW) if has_peak_matches != []: for mz, I in has_peak_matches: time_dependent_intensities.append( [spectrum.scan_time_in_minutes(), I, mz] ) print("RT \ti \tmz") for rt, i, mz in time_dependent_intensities: print("{0:5.3f}\t{1:13.4f}\t{2:10}".format(rt, i, mz)) return
if __name__ == "__main__": main()