CoreMS 4.0.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- corems/__init__.py +63 -0
- corems/chroma_peak/__init__.py +0 -0
- corems/chroma_peak/calc/ChromaPeakCalc.py +480 -0
- corems/chroma_peak/calc/__init__.py +0 -0
- corems/chroma_peak/calc/subset.py +196 -0
- corems/chroma_peak/factory/__init__.py +0 -0
- corems/chroma_peak/factory/chroma_peak_classes.py +1178 -0
- corems/encapsulation/__init__.py +0 -0
- corems/encapsulation/constant.py +1283 -0
- corems/encapsulation/factory/__init__.py +0 -0
- corems/encapsulation/factory/parameters.py +392 -0
- corems/encapsulation/factory/processingSetting.py +1244 -0
- corems/encapsulation/input/__init__.py +0 -0
- corems/encapsulation/input/parameter_from_json.py +579 -0
- corems/encapsulation/output/__init__.py +0 -0
- corems/encapsulation/output/parameter_to_dict.py +142 -0
- corems/encapsulation/output/parameter_to_json.py +332 -0
- corems/mass_spectra/__init__.py +0 -0
- corems/mass_spectra/calc/GC_Calc.py +84 -0
- corems/mass_spectra/calc/GC_Deconvolution.py +558 -0
- corems/mass_spectra/calc/GC_RI_Calibration.py +44 -0
- corems/mass_spectra/calc/MZSearch.py +249 -0
- corems/mass_spectra/calc/SignalProcessing.py +656 -0
- corems/mass_spectra/calc/__init__.py +0 -0
- corems/mass_spectra/calc/lc_calc.py +5790 -0
- corems/mass_spectra/calc/lc_calc_operations.py +1127 -0
- corems/mass_spectra/factory/GC_Class.py +791 -0
- corems/mass_spectra/factory/__init__.py +0 -0
- corems/mass_spectra/factory/chromat_data.py +51 -0
- corems/mass_spectra/factory/lc_class.py +2721 -0
- corems/mass_spectra/input/__init__.py +0 -0
- corems/mass_spectra/input/andiNetCDF.py +200 -0
- corems/mass_spectra/input/boosterHDF5.py +216 -0
- corems/mass_spectra/input/brukerSolarix.py +153 -0
- corems/mass_spectra/input/brukerSolarix_utils.py +73 -0
- corems/mass_spectra/input/corems_hdf5.py +1710 -0
- corems/mass_spectra/input/massList.py +133 -0
- corems/mass_spectra/input/mzml.py +668 -0
- corems/mass_spectra/input/parserbase.py +239 -0
- corems/mass_spectra/input/rawFileReader.py +1839 -0
- corems/mass_spectra/output/__init__.py +0 -0
- corems/mass_spectra/output/export.py +2800 -0
- corems/mass_spectrum/__init__.py +0 -0
- corems/mass_spectrum/calc/AutoRecalibration.py +237 -0
- corems/mass_spectrum/calc/Calibration.py +602 -0
- corems/mass_spectrum/calc/CalibrationCalc.py +253 -0
- corems/mass_spectrum/calc/KendrickGroup.py +239 -0
- corems/mass_spectrum/calc/MassErrorPrediction.py +436 -0
- corems/mass_spectrum/calc/MassSpectrumCalc.py +303 -0
- corems/mass_spectrum/calc/MeanResolvingPowerFilter.py +212 -0
- corems/mass_spectrum/calc/NoiseCalc.py +371 -0
- corems/mass_spectrum/calc/NoiseCalc_Bayes.py +93 -0
- corems/mass_spectrum/calc/PeakPicking.py +994 -0
- corems/mass_spectrum/calc/__init__.py +0 -0
- corems/mass_spectrum/factory/MassSpectrumClasses.py +1753 -0
- corems/mass_spectrum/factory/__init__.py +0 -0
- corems/mass_spectrum/input/__init__.py +0 -0
- corems/mass_spectrum/input/baseClass.py +531 -0
- corems/mass_spectrum/input/boosterHDF5.py +161 -0
- corems/mass_spectrum/input/coremsHDF5.py +475 -0
- corems/mass_spectrum/input/massList.py +402 -0
- corems/mass_spectrum/input/numpyArray.py +133 -0
- corems/mass_spectrum/output/__init__.py +0 -0
- corems/mass_spectrum/output/export.py +841 -0
- corems/molecular_formula/__init__.py +0 -0
- corems/molecular_formula/calc/MolecularFormulaCalc.py +885 -0
- corems/molecular_formula/calc/__init__.py +0 -0
- corems/molecular_formula/factory/MolecularFormulaFactory.py +895 -0
- corems/molecular_formula/factory/__init__.py +0 -0
- corems/molecular_formula/input/__init__.py +0 -0
- corems/molecular_formula/input/masslist_ref.py +355 -0
- corems/molecular_id/__init__.py +0 -0
- corems/molecular_id/calc/ClusterFilter.py +251 -0
- corems/molecular_id/calc/MolecularFilter.py +122 -0
- corems/molecular_id/calc/SpectralSimilarity.py +632 -0
- corems/molecular_id/calc/__init__.py +0 -0
- corems/molecular_id/calc/math_distance.py +1637 -0
- corems/molecular_id/data/FAMES_REF.msp +980 -0
- corems/molecular_id/data/PNNLMetV20191015.msp +157267 -0
- corems/molecular_id/factory/EI_SQL.py +650 -0
- corems/molecular_id/factory/MolecularLookupTable.py +914 -0
- corems/molecular_id/factory/__init__.py +0 -0
- corems/molecular_id/factory/classification.py +884 -0
- corems/molecular_id/factory/lipid_molecular_metadata.py +50 -0
- corems/molecular_id/factory/molecularSQL.py +827 -0
- corems/molecular_id/factory/spectrum_search_results.py +119 -0
- corems/molecular_id/input/__init__.py +0 -0
- corems/molecular_id/input/nistMSI.py +148 -0
- corems/molecular_id/search/__init__.py +0 -0
- corems/molecular_id/search/compoundSearch.py +214 -0
- corems/molecular_id/search/database_interfaces.py +1527 -0
- corems/molecular_id/search/findOxygenPeaks.py +330 -0
- corems/molecular_id/search/lcms_spectral_search.py +348 -0
- corems/molecular_id/search/molecularFormulaSearch.py +1117 -0
- corems/molecular_id/search/priorityAssignment.py +723 -0
- corems/ms_peak/__init__.py +0 -0
- corems/ms_peak/calc/MSPeakCalc.py +1010 -0
- corems/ms_peak/calc/__init__.py +0 -0
- corems/ms_peak/factory/MSPeakClasses.py +542 -0
- corems/ms_peak/factory/__init__.py +0 -0
- corems/transient/__init__.py +0 -0
- corems/transient/calc/TransientCalc.py +362 -0
- corems/transient/calc/__init__.py +0 -0
- corems/transient/factory/TransientClasses.py +457 -0
- corems/transient/factory/__init__.py +0 -0
- corems/transient/input/__init__.py +0 -0
- corems/transient/input/brukerSolarix.py +461 -0
- corems/transient/input/midasDatFile.py +172 -0
- corems-4.0.0.dist-info/METADATA +475 -0
- corems-4.0.0.dist-info/RECORD +171 -0
- corems-4.0.0.dist-info/WHEEL +5 -0
- corems-4.0.0.dist-info/licenses/LICENSE +22 -0
- corems-4.0.0.dist-info/top_level.txt +4 -0
- examples/archive/scripts/CoreMS_tutorial.py +94 -0
- examples/archive/scripts/DI HR-MS Halogens Bruker.py +196 -0
- examples/archive/scripts/DI HR-MS MassList.py +385 -0
- examples/archive/scripts/GC-MS MetabRef.py +213 -0
- examples/archive/scripts/GC-MS NetCDF.py +217 -0
- examples/archive/scripts/HR-MS Thermo Raw 21T.py +136 -0
- examples/archive/scripts/LC-ICPMS_metal_peaks.py +297 -0
- examples/archive/scripts/LCMS-Thermo.py +460 -0
- examples/archive/scripts/LCMS_isotopes.py +283 -0
- examples/archive/scripts/MSParams_example.py +21 -0
- examples/archive/scripts/Molecular Formula Data Aggreation.py +84 -0
- examples/archive/scripts/Single Mz Search.py +69 -0
- examples/test_notebooks.py +145 -0
- ext_lib/ChemstationMSFileReader.dll +0 -0
- ext_lib/ChemstationMSFileReader.xml +126 -0
- ext_lib/RawFileReaderLicense.doc +0 -0
- ext_lib/ThermoFisher.CommonCore.BackgroundSubtraction.dll +0 -0
- ext_lib/ThermoFisher.CommonCore.BackgroundSubtraction.xml +2307 -0
- ext_lib/ThermoFisher.CommonCore.Data.dll +0 -0
- ext_lib/ThermoFisher.CommonCore.Data.xml +28974 -0
- ext_lib/ThermoFisher.CommonCore.MassPrecisionEstimator.dll +0 -0
- ext_lib/ThermoFisher.CommonCore.MassPrecisionEstimator.xml +241 -0
- ext_lib/ThermoFisher.CommonCore.RawFileReader.dll +0 -0
- ext_lib/ThermoFisher.CommonCore.RawFileReader.xml +31174 -0
- ext_lib/__init__.py +0 -0
- ext_lib/dotnet/OpenMcdf.Extensions.dll +0 -0
- ext_lib/dotnet/OpenMcdf.dll +0 -0
- ext_lib/dotnet/OpenMcdf.xml +1154 -0
- ext_lib/dotnet/System.IO.FileSystem.AccessControl.dll +0 -0
- ext_lib/dotnet/System.IO.FileSystem.AccessControl.xml +506 -0
- ext_lib/dotnet/System.Security.AccessControl.dll +0 -0
- ext_lib/dotnet/System.Security.AccessControl.xml +2043 -0
- ext_lib/dotnet/System.Security.Principal.Windows.dll +0 -0
- ext_lib/dotnet/System.Security.Principal.Windows.xml +1011 -0
- ext_lib/dotnet/ThermoFisher.CommonCore.BackgroundSubtraction.dll +0 -0
- ext_lib/dotnet/ThermoFisher.CommonCore.BackgroundSubtraction.xml +2307 -0
- ext_lib/dotnet/ThermoFisher.CommonCore.Data.dll +0 -0
- ext_lib/dotnet/ThermoFisher.CommonCore.Data.xml +29148 -0
- ext_lib/dotnet/ThermoFisher.CommonCore.MassPrecisionEstimator.dll +0 -0
- ext_lib/dotnet/ThermoFisher.CommonCore.MassPrecisionEstimator.xml +241 -0
- ext_lib/dotnet/ThermoFisher.CommonCore.RawFileReader.dll +0 -0
- ext_lib/dotnet/ThermoFisher.CommonCore.RawFileReader.xml +31492 -0
- ext_lib/version +18 -0
- support_code/atom_parsers/AtomsDescription.py +359 -0
- support_code/atom_parsers/CreateAtomsDescription.py +56 -0
- support_code/nmdc/filefinder.py +90 -0
- support_code/nmdc/lipidomics/lipidomics_workflow.py +748 -0
- support_code/nmdc/lipidomics/manifest_examples.py +49 -0
- support_code/nmdc/metabolomics/gcms_workflow.py +158 -0
- support_code/nmdc/metabolomics/lcms_metabolomics_targeted_search.py +59 -0
- support_code/nmdc/metabolomics/lcms_metabolomics_workflow.py +248 -0
- support_code/nmdc/metabolomics/metabolomics_collection.py +628 -0
- support_code/nmdc/metadata/dms_api.py +42 -0
- support_code/nmdc/nom/archived_scripts/nmdc_metadata_gen.py +288 -0
- support_code/nmdc/nom/archived_scripts/nom_grow_workflow.py +209 -0
- support_code/nmdc/nom/nom_workflow.py +312 -0
- support_code/windows_only_importers/BrukerCompassXtract.py +180 -0
- support_code/windows_only_importers/ThermoMSFileReader.py +405 -0
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
from corems.molecular_id.calc.ClusterFilter import ClusteringFilter
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class MolecularFormulaSearchFilters:
|
|
5
|
+
"""Class containing static methods for filtering molecular formulas in a mass spectrum.
|
|
6
|
+
|
|
7
|
+
Methods
|
|
8
|
+
-------
|
|
9
|
+
* filter_kendrick(ms_peak_indexes, mass_spectrum_obj).
|
|
10
|
+
Apply Kendrick filter to the mass spectrum.
|
|
11
|
+
* check_min_peaks(ms_peak_indexes, mass_spectrum_obj).
|
|
12
|
+
Check if the number of peaks per class meets the minimum requirement.
|
|
13
|
+
* filter_isotopologue(ms_peak_indexes, mass_spectrum_obj).
|
|
14
|
+
Apply isotopologue filter to the mass spectrum.
|
|
15
|
+
|
|
16
|
+
"""
|
|
17
|
+
|
|
18
|
+
@staticmethod
|
|
19
|
+
def filter_kendrick(ms_peak_indexes, mass_spectrum_obj):
|
|
20
|
+
"""Apply Kendrick filter to the mass spectrum.
|
|
21
|
+
|
|
22
|
+
Parameters
|
|
23
|
+
----------
|
|
24
|
+
ms_peak_indexes : list
|
|
25
|
+
List of peak indexes and their associated molecular formula objects.
|
|
26
|
+
mass_spectrum_obj : MassSpectrum
|
|
27
|
+
The mass spectrum object.
|
|
28
|
+
|
|
29
|
+
Returns
|
|
30
|
+
-------
|
|
31
|
+
filtered_ms_peak_indexes : list
|
|
32
|
+
List of peak indexes and their associated molecular formula objects after applying the Kendrick filter.
|
|
33
|
+
"""
|
|
34
|
+
index_to_remove = []
|
|
35
|
+
|
|
36
|
+
if mass_spectrum_obj.molecular_search_settings.use_runtime_kendrick_filter:
|
|
37
|
+
index_to_remove = ClusteringFilter().filter_kendrick_by_index(
|
|
38
|
+
ms_peak_indexes, mass_spectrum_obj
|
|
39
|
+
)
|
|
40
|
+
|
|
41
|
+
# for index in noise_indexes: self.mass_spectrum_obj[index].clear_molecular_formulas()
|
|
42
|
+
|
|
43
|
+
all_index_to_remove = []
|
|
44
|
+
|
|
45
|
+
for peak_index, mf_obj in index_to_remove:
|
|
46
|
+
ms_peak_indexes.remove((peak_index, mf_obj))
|
|
47
|
+
|
|
48
|
+
all_index_to_remove.extend(mf_obj.mspeak_mf_isotopologues_indexes)
|
|
49
|
+
|
|
50
|
+
all_index_to_remove = list(set(all_index_to_remove + index_to_remove))
|
|
51
|
+
|
|
52
|
+
for peak_index, mf_obj in all_index_to_remove:
|
|
53
|
+
mass_spectrum_obj[peak_index].remove_molecular_formula(mf_obj)
|
|
54
|
+
|
|
55
|
+
return ms_peak_indexes
|
|
56
|
+
|
|
57
|
+
@staticmethod
|
|
58
|
+
def check_min_peaks(ms_peak_indexes, mass_spectrum):
|
|
59
|
+
"""Check if the number of peaks per class meets the minimum requirement.
|
|
60
|
+
|
|
61
|
+
Parameters
|
|
62
|
+
--------
|
|
63
|
+
ms_peak_indexes : list
|
|
64
|
+
List of peak indexes and their associated molecular formula objects.
|
|
65
|
+
mass_spectrum_obj : MassSpectrum
|
|
66
|
+
The mass spectrum object.
|
|
67
|
+
|
|
68
|
+
"""
|
|
69
|
+
if mass_spectrum.molecular_search_settings.use_min_peaks_filter:
|
|
70
|
+
if (
|
|
71
|
+
not len(ms_peak_indexes)
|
|
72
|
+
>= mass_spectrum.molecular_search_settings.min_peaks_per_class
|
|
73
|
+
):
|
|
74
|
+
for peak_index, mf_obj in ms_peak_indexes:
|
|
75
|
+
mass_spectrum[peak_index].remove_molecular_formula(mf_obj)
|
|
76
|
+
|
|
77
|
+
@staticmethod
|
|
78
|
+
def filter_isotopologue(ms_peak_indexes, mass_spectrum):
|
|
79
|
+
"""Apply isotopologue filter to the mass spectrum.
|
|
80
|
+
|
|
81
|
+
Parameters
|
|
82
|
+
--------
|
|
83
|
+
ms_peak_indexes : list
|
|
84
|
+
List of peak indexes and their associated molecular formula objects.
|
|
85
|
+
mass_spectrum_obj : MassSpectrum
|
|
86
|
+
The mass spectrum object.
|
|
87
|
+
|
|
88
|
+
Returns
|
|
89
|
+
------------
|
|
90
|
+
filtered_ms_peak_indexes : list
|
|
91
|
+
List of peak indexes and their associated molecular formula objects after applying the isotopologue filter.
|
|
92
|
+
"""
|
|
93
|
+
index_to_remove = []
|
|
94
|
+
# print(len(ms_peak_indexes))
|
|
95
|
+
if mass_spectrum.molecular_search_settings.use_isotopologue_filter:
|
|
96
|
+
atoms_iso_filter = (
|
|
97
|
+
mass_spectrum.molecular_search_settings.isotopologue_filter_atoms
|
|
98
|
+
)
|
|
99
|
+
|
|
100
|
+
isotopologue_count_threshold = (
|
|
101
|
+
mass_spectrum.molecular_search_settings.isotopologue_filter_threshold
|
|
102
|
+
)
|
|
103
|
+
|
|
104
|
+
for mspeak_index, mf_obj in ms_peak_indexes:
|
|
105
|
+
if mf_obj.isotopologue_count_percentile < isotopologue_count_threshold:
|
|
106
|
+
if set(mf_obj.atoms).intersection(atoms_iso_filter):
|
|
107
|
+
# removes tuple obj from initial list to be used on next filter steps
|
|
108
|
+
ms_peak_indexes.remove((mspeak_index, mf_obj))
|
|
109
|
+
|
|
110
|
+
# current mf_obj
|
|
111
|
+
index_to_remove.append((mspeak_index, mf_obj))
|
|
112
|
+
# all other associated isotopolgues
|
|
113
|
+
index_to_remove.extend(mf_obj.mspeak_mf_isotopologues_indexes)
|
|
114
|
+
|
|
115
|
+
# iterate over all indexes to be remove and remove the mf from the mspeak
|
|
116
|
+
|
|
117
|
+
# print(len(ms_peak_indexes))
|
|
118
|
+
for peak_index, mf_obj in index_to_remove:
|
|
119
|
+
# print(peak_index, mf_obj)
|
|
120
|
+
mass_spectrum[peak_index].remove_molecular_formula(mf_obj)
|
|
121
|
+
|
|
122
|
+
return ms_peak_indexes
|