Source: https://github.com/aipoch/medical-research-skills
When to Use
- Converting, validating, or batch-processing mass spectrometry files (e.g., mzML, mzXML, MGF) as part of a pipeline.
- Cleaning raw spectra before downstream analysis (smoothing, baseline correction, denoising, peak picking).
- Detecting and linking isotope patterns / features for proteomics or metabolomics feature tables.
- Running identification-oriented steps where peptide/protein identification integration is required.
- Building custom computational MS workflows in Python while leveraging OpenMS algorithms.
Key Features
- MS File I/O: Read/write common MS formats (mzML, mzXML, MGF).
- Signal Processing: Smoothing, baseline correction, filtering, and peak picking.
- Feature Detection: Isotope pattern detection and feature linking utilities.
- Identification Support: Hooks for peptide identification workflows via OpenMS-compatible components.
- Scripted Workflows: A ready-to-use “Load → Process → Analyze” workflow entry point.
Dependencies
Install the following Python packages:
pyopenms (version: compatible with your OpenMS/PyOpenMS distribution)
pandas (version: latest recommended)
numpy (version: latest recommended)
Installation:
uv pip install pyopenms pandas numpy
Example Usage
A complete runnable example using the provided workflow script (scripts/process_ms.py):
# run_example.py
from scripts.process_ms import run_workflow
def main():
# Load -> Process -> Analyze
# The script is expected to read the input mzML and apply optional filtering.
result = run_workflow("data.mzML", apply_filter=True)
# The returned object depends on the implementation of run_workflow.
# Common patterns include a processed experiment, a feature map, or a summary dict.
print("Workflow finished.")
print(result)
if __name__ == "__main__":
main()
Run:
python run_example.py
For manual/custom workflows, see:
- File operations:
references/file_io.md
- Signal processing algorithms:
references/signal_processing.md
Implementation Details
- Binding Layer: This skill uses PyOpenMS, the Python bindings for the OpenMS C++ library, to expose core computational MS algorithms.
- Workflow Pattern: The default script follows a standard pipeline structure:
- Load an MS run from disk (e.g., mzML).
- Process spectra (optional filtering/smoothing/baseline correction).
- Analyze results (e.g., peak picking, feature detection, or downstream summaries).
- Configurable Processing: The
apply_filter flag in run_workflow(...) is intended to toggle one or more preprocessing steps; exact filters and parameters should be documented in scripts/process_ms.py and the referenced guides.
- Algorithm Reference: Detailed descriptions of available filters and peak pickers, including parameterization, are maintained in
references/signal_processing.md.
1---2name: pyopenms-skill3description: Comprehensive tool for computational mass spectrometry using PyOpenMS; use when you need to read/write MS formats (mzML/mzXML/MGF), run signal processing (smoothing/peak picking), detect isotope features, or perform peptide identification in proteomics/metabolomics workflows.4license: MIT5---6> **Source**: [https://github.com/aipoch/medical-research-skills](https://github.com/aipoch/medical-research-skills)
7
8## When to Use
9
10- Converting, validating, or batch-processing mass spectrometry files (e.g., mzML, mzXML, MGF) as part of a pipeline.
11- Cleaning raw spectra before downstream analysis (smoothing, baseline correction, denoising, peak picking).
12- Detecting and linking isotope patterns / features for proteomics or metabolomics feature tables.
13- Running identification-oriented steps where peptide/protein identification integration is required.
14- Building custom computational MS workflows in Python while leveraging OpenMS algorithms.
15
16## Key Features
17
18- **MS File I/O**: Read/write common MS formats (mzML, mzXML, MGF).
19- **Signal Processing**: Smoothing, baseline correction, filtering, and peak picking.
20- **Feature Detection**: Isotope pattern detection and feature linking utilities.
21- **Identification Support**: Hooks for peptide identification workflows via OpenMS-compatible components.
22- **Scripted Workflows**: A ready-to-use “Load → Process → Analyze” workflow entry point.
23
24## Dependencies
25
26Install the following Python packages:
27
28- `pyopenms` (version: compatible with your OpenMS/PyOpenMS distribution)
29- `pandas` (version: latest recommended)
30- `numpy` (version: latest recommended)
31
32Installation:
33
34```bash
35uv pip install pyopenms pandas numpy
36```
37
38## Example Usage
39
40A complete runnable example using the provided workflow script (`scripts/process_ms.py`):
41
42```python
43# run_example.py
44from scripts.process_ms import run_workflow
45
46def main():
47 # Load -> Process -> Analyze
48 # The script is expected to read the input mzML and apply optional filtering.
49 result = run_workflow("data.mzML", apply_filter=True)
50
51 # The returned object depends on the implementation of run_workflow.
52 # Common patterns include a processed experiment, a feature map, or a summary dict.
53 print("Workflow finished.")
54 print(result)
55
56if __name__ == "__main__":
57 main()
58```
59
60Run:
61
62```bash
63python run_example.py
64```
65
66For manual/custom workflows, see:
67- File operations: `references/file_io.md`
68- Signal processing algorithms: `references/signal_processing.md`
69
70## Implementation Details
71
72- **Binding Layer**: This skill uses PyOpenMS, the Python bindings for the OpenMS C++ library, to expose core computational MS algorithms.
73- **Workflow Pattern**: The default script follows a standard pipeline structure:
74 1. **Load** an MS run from disk (e.g., mzML).
75 2. **Process** spectra (optional filtering/smoothing/baseline correction).
76 3. **Analyze** results (e.g., peak picking, feature detection, or downstream summaries).
77- **Configurable Processing**: The `apply_filter` flag in `run_workflow(...)` is intended to toggle one or more preprocessing steps; exact filters and parameters should be documented in `scripts/process_ms.py` and the referenced guides.
78- **Algorithm Reference**: Detailed descriptions of available filters and peak pickers, including parameterization, are maintained in `references/signal_processing.md`.