Skip to content
Back to skills

Nmr Spectrum Peak Detection

ASecurity

Use when you have a loaded INADEQUATE NMR spectrum file (after referencing

  • 16 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added September 12, 2026
ai-agentspythongogitdocumentation

Security analysis

A100/100

Scanned September 12, 2026

npx -y skills add HolobiomicsLab/asb-skill-collections --skill nmr-spectrum-peak-detection --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Nmr Spectrum Peak Detection?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Nmr Spectrum Peak Detection
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/holobiomicslab-nmr-spectrum-peak-detection/badge)](https://www.skillsdirectory.com/skills/holobiomicslab-nmr-spectrum-peak-detection)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: nmr-spectrum-peak-detection
description: Use when you have a loaded INADEQUATE NMR spectrum file (after referencing
  via basic shifting) and need to identify individual peak positions and intensities
  as input to downstream peak network clustering or metabolite matching.
license: CC-BY-4.0
metadata:
  edam_operation: http://edamontology.org/operation_3214
  edam_topics:
  - http://edamontology.org/topic_0593
  - http://edamontology.org/topic_3172
  tools:
  - Python
  - PyINETA
  techniques:
  - NMR
  license_tier: open
  provenance_tier: literature
derived_from:
- doi: 10.1021/acs.analchem.4c03966
  title: PyINETA
evidence_spans:
- pyINETA is a Python package
- python run_pyineta.py <options>
- This is the documentation for the PyINETA package version 2.0.0.
- '.. automodule:: pyineta.finding :members:'
claims: []
provenance:
  collection: https://w3id.org/holobiomicslab/asb-skill/collection/metabolomics/v2
  assembled_by: scripts/collect_metabolomics_collection.py
  sources:
  - build: coll_pyineta_cq
    doi: 10.1021/acs.analchem.4c03966
    title: PyINETA
  dedup_kept_from: coll_pyineta_cq
schema_version: 0.2.0
attribution:
  generator: AgenticScienceBuilder
  original_doi: 10.1021/acs.analchem.4c03966
  all_source_dois:
  - 10.1021/acs.analchem.4c03966
  zenodo_doi: 10.5281/zenodo.20794027
  curators: []
  promoter: Louis-Félix Nothias
  sponsor: CNRS & Université Côte d'Azur
---

# nmr-spectrum-peak-detection

## Summary

Automated detection of local intensity maxima in INADEQUATE NMR spectra to generate a structured list of picked peaks with chemical shift coordinates and intensity values. This is the foundational step in INADEQUATE metabolite identification workflows.

## When to use

Apply this skill when you have a loaded INADEQUATE NMR spectrum file (after referencing via basic shifting) and need to identify individual peak positions and intensities as input to downstream peak network clustering or metabolite matching. Use when the goal is to transition from continuous spectral intensity data to discrete peak coordinates.

## When NOT to use

- Input spectrum has not been loaded or referencing has not been applied — apply referencing first.
- Goal is direct metabolite identification without clustering peaks into networks — peak-picking alone cannot resolve which peaks belong to the same compound.
- Spectrum is dominated by noise or extremely low signal-to-noise ratio — peak detection will produce high false-positive rates.

## Inputs

- INADEQUATE NMR spectrum file (referencing-corrected via basic chemical shift shifting)
- Intensity threshold parameter(s) for local maxima detection
- Chemical shift range or spectral region of interest (optional)

## Outputs

- Structured list or table of picked peaks
- Peak records with chemical shift coordinates (ppm)
- Peak intensity values for each detected maximum

## How to apply

Load the INADEQUATE NMR spectrum file using PyINETA's input reader, then apply the peak-picking algorithm via the pyineta.picking module to detect local maxima across the spectrum intensity landscape. The module scans for peaks that exceed specified intensity thresholds and marks their chemical shift coordinates. Output peaks are structured as a list or table containing both chemical shift coordinates and corresponding intensity values. Success is judged by verifying that detected peaks correspond to actual spectral features (high signal-to-noise ratio) and that no peaks are missed in high-intensity regions.

## Related tools

- **PyINETA** (Primary package containing the pyineta.picking module for automated local maxima detection and intensity-threshold-based peak identification) — https://github.com/edisonomics/PyINETA
- **Python** (Programming language and runtime environment for executing PyINETA peak-picking algorithms)

## Examples

```
python <path_to_pyineta_repo>/run_pyineta.py -c config.ini -s pick -o output_dir
```

## Evaluation signals

- All detected peaks have non-zero intensity values and lie within the chemical shift range of the loaded spectrum.
- Picked peaks cluster visually on the original spectrum as local maxima, with no peaks called in low-intensity baseline regions.
- Peak list is reproducible: running the same picking step on the same referencing-corrected spectrum produces identical results.
- Downstream clustering step (pyineta.clustering) successfully groups picked peaks into networks without excessive fragmentation or over-merging.
- Comparison against manual peak annotation (if available) shows sensitivity and specificity consistent with the intensity threshold chosen.

## Limitations

- Peak picking relies on intensity thresholds; setting thresholds too low introduces noise artifacts, while too high may miss weaker legitimate peaks.
- Adjacent peaks that are closer than the spectral resolution cannot be separated; resolution is hardware-dependent and not addressed by the picking step alone.
- Basic chemical shift referencing (via simple shifting) may leave residual referencing errors that alter picked peak coordinates slightly.
- No changelog available in the repository, making it difficult to track changes in peak-picking algorithm behavior across versions.

## Evidence

- [other] The peak-picking mechanism reads INADEQUATE spectra, applies referencing via basic shifting, and produces a list of picked peaks as output.: "The peak-picking mechanism reads INADEQUATE spectra, applies referencing via basic shifting, and produces a list of picked peaks as output."
- [readme] pyINETA can perform basic tasks such as reading and referencing (using basic shifting) the INADEQUATE spectra and peak picking: "pyINETA can perform basic tasks such as reading and referencing (using basic shifting) the INADEQUATE spectra and peak picking"
- [other] Apply peak-picking algorithm via pyineta.picking module to detect local maxima and intensity thresholds across the spectrum.: "Apply peak-picking algorithm via pyineta.picking module to detect local maxima and intensity thresholds across the spectrum."
- [other] Output the detected peaks as a structured list or table containing chemical shift coordinates and intensity values.: "Output the detected peaks as a structured list or table containing chemical shift coordinates and intensity values."
- [readme] It is designed to filter these picked peaks to identify networks of peaks (ideally) coming from the same compound: "It is designed to filter these picked peaks to identify networks of peaks (ideally) coming from the same compound"

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

View all in ai-agents →

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.