corems.mass_spectra.input.parserbase

  1from abc import ABC, abstractmethod
  2import datetime
  3
  4
  5class SpectraParserInterface(ABC):
  6    """
  7    Interface for parsing mass spectra data into MassSpectraBase objects.
  8
  9    Methods
 10    -------
 11    * load().
 12        Load mass spectra data.
 13    * run().
 14        Parse mass spectra data.
 15    * get_mass_spectra_obj().
 16        Return MassSpectraBase object with several attributes populated
 17    * get_mass_spectrum_from_scan(scan_number).
 18        Return MassSpecBase data object from scan number.
 19
 20    Notes
 21    -----
 22    This is an abstract class and should not be instantiated directly.
 23    """
 24
 25    @abstractmethod
 26    def load(self):
 27        """
 28        Load mass spectra data.
 29        """
 30        pass
 31
 32    @abstractmethod
 33    def run(self):
 34        """
 35        Parse mass spectra data.
 36        """
 37        pass
 38
 39    @abstractmethod
 40    def get_scan_df(self):
 41        """
 42        Return scan data as a pandas DataFrame.
 43        """
 44        pass
 45
 46    @abstractmethod
 47    def get_ms_raw(self, spectra, scan_df):
 48        """
 49        Return a dictionary of mass spectra data as a pandas DataFrame.
 50        """
 51        pass
 52
 53    @abstractmethod
 54    def get_mass_spectra_obj(self):
 55        """
 56        Return mass spectra data object.
 57        """
 58        pass
 59
 60    @abstractmethod
 61    def get_mass_spectrum_from_scan(
 62        self, scan_number, spectrum_mode, auto_process=True
 63    ):
 64        """
 65        Return mass spectrum data object from scan number.
 66        """
 67        pass
 68
 69    @abstractmethod
 70    def get_mass_spectra_from_scan_list(
 71        self, scan_list, spectrum_mode, auto_process=True
 72    ):
 73        """
 74        Return a list of mass spectrum data objects from a list of scan numbers.
 75        """
 76        pass
 77
 78    @abstractmethod
 79    def get_instrument_info(self):
 80        """
 81        Return instrument information.
 82
 83        Returns
 84        -------
 85        dict
 86            A dictionary with the keys 'model', and 'serial_number'.
 87        """
 88        pass
 89
 90    @abstractmethod
 91    def get_creation_time(self) -> datetime.datetime:
 92        """
 93        Return the creation time of the mass spectra data.
 94
 95        Returns
 96        -------
 97        datetime.datetime
 98            The creation time of the mass spectra data.
 99        """
100        pass
class SpectraParserInterface(abc.ABC):
  6class SpectraParserInterface(ABC):
  7    """
  8    Interface for parsing mass spectra data into MassSpectraBase objects.
  9
 10    Methods
 11    -------
 12    * load().
 13        Load mass spectra data.
 14    * run().
 15        Parse mass spectra data.
 16    * get_mass_spectra_obj().
 17        Return MassSpectraBase object with several attributes populated
 18    * get_mass_spectrum_from_scan(scan_number).
 19        Return MassSpecBase data object from scan number.
 20
 21    Notes
 22    -----
 23    This is an abstract class and should not be instantiated directly.
 24    """
 25
 26    @abstractmethod
 27    def load(self):
 28        """
 29        Load mass spectra data.
 30        """
 31        pass
 32
 33    @abstractmethod
 34    def run(self):
 35        """
 36        Parse mass spectra data.
 37        """
 38        pass
 39
 40    @abstractmethod
 41    def get_scan_df(self):
 42        """
 43        Return scan data as a pandas DataFrame.
 44        """
 45        pass
 46
 47    @abstractmethod
 48    def get_ms_raw(self, spectra, scan_df):
 49        """
 50        Return a dictionary of mass spectra data as a pandas DataFrame.
 51        """
 52        pass
 53
 54    @abstractmethod
 55    def get_mass_spectra_obj(self):
 56        """
 57        Return mass spectra data object.
 58        """
 59        pass
 60
 61    @abstractmethod
 62    def get_mass_spectrum_from_scan(
 63        self, scan_number, spectrum_mode, auto_process=True
 64    ):
 65        """
 66        Return mass spectrum data object from scan number.
 67        """
 68        pass
 69
 70    @abstractmethod
 71    def get_mass_spectra_from_scan_list(
 72        self, scan_list, spectrum_mode, auto_process=True
 73    ):
 74        """
 75        Return a list of mass spectrum data objects from a list of scan numbers.
 76        """
 77        pass
 78
 79    @abstractmethod
 80    def get_instrument_info(self):
 81        """
 82        Return instrument information.
 83
 84        Returns
 85        -------
 86        dict
 87            A dictionary with the keys 'model', and 'serial_number'.
 88        """
 89        pass
 90
 91    @abstractmethod
 92    def get_creation_time(self) -> datetime.datetime:
 93        """
 94        Return the creation time of the mass spectra data.
 95
 96        Returns
 97        -------
 98        datetime.datetime
 99            The creation time of the mass spectra data.
100        """
101        pass

Interface for parsing mass spectra data into MassSpectraBase objects.

Methods
  • load(). Load mass spectra data.
  • run(). Parse mass spectra data.
  • get_mass_spectra_obj(). Return MassSpectraBase object with several attributes populated
  • get_mass_spectrum_from_scan(scan_number). Return MassSpecBase data object from scan number.
Notes

This is an abstract class and should not be instantiated directly.

@abstractmethod
def load(self):
26    @abstractmethod
27    def load(self):
28        """
29        Load mass spectra data.
30        """
31        pass

Load mass spectra data.

@abstractmethod
def run(self):
33    @abstractmethod
34    def run(self):
35        """
36        Parse mass spectra data.
37        """
38        pass

Parse mass spectra data.

@abstractmethod
def get_scan_df(self):
40    @abstractmethod
41    def get_scan_df(self):
42        """
43        Return scan data as a pandas DataFrame.
44        """
45        pass

Return scan data as a pandas DataFrame.

@abstractmethod
def get_ms_raw(self, spectra, scan_df):
47    @abstractmethod
48    def get_ms_raw(self, spectra, scan_df):
49        """
50        Return a dictionary of mass spectra data as a pandas DataFrame.
51        """
52        pass

Return a dictionary of mass spectra data as a pandas DataFrame.

@abstractmethod
def get_mass_spectra_obj(self):
54    @abstractmethod
55    def get_mass_spectra_obj(self):
56        """
57        Return mass spectra data object.
58        """
59        pass

Return mass spectra data object.

@abstractmethod
def get_mass_spectrum_from_scan(self, scan_number, spectrum_mode, auto_process=True):
61    @abstractmethod
62    def get_mass_spectrum_from_scan(
63        self, scan_number, spectrum_mode, auto_process=True
64    ):
65        """
66        Return mass spectrum data object from scan number.
67        """
68        pass

Return mass spectrum data object from scan number.

@abstractmethod
def get_mass_spectra_from_scan_list(self, scan_list, spectrum_mode, auto_process=True):
70    @abstractmethod
71    def get_mass_spectra_from_scan_list(
72        self, scan_list, spectrum_mode, auto_process=True
73    ):
74        """
75        Return a list of mass spectrum data objects from a list of scan numbers.
76        """
77        pass

Return a list of mass spectrum data objects from a list of scan numbers.

@abstractmethod
def get_instrument_info(self):
79    @abstractmethod
80    def get_instrument_info(self):
81        """
82        Return instrument information.
83
84        Returns
85        -------
86        dict
87            A dictionary with the keys 'model', and 'serial_number'.
88        """
89        pass

Return instrument information.

Returns
  • dict: A dictionary with the keys 'model', and 'serial_number'.
@abstractmethod
def get_creation_time(self) -> datetime.datetime:
 91    @abstractmethod
 92    def get_creation_time(self) -> datetime.datetime:
 93        """
 94        Return the creation time of the mass spectra data.
 95
 96        Returns
 97        -------
 98        datetime.datetime
 99            The creation time of the mass spectra data.
100        """
101        pass

Return the creation time of the mass spectra data.

Returns
  • datetime.datetime: The creation time of the mass spectra data.