PeakPicker
Chromatography peak detection, deconvolution, and quantification tool for Agilent Chemstation data.
Features
- File reading: Agilent Chemstation
.chfiles (format 130/131),.Dfolder scanning, Rainbow API support - Baseline correction: ArPLS, weighted spline, hybrid valley-based strategies with quality evaluation
- Peak detection: Two-pass detection with configurable parameters
- Peak deconvolution: Gaussian and EMG (Exponentially Modified Gaussian) fitting via
lmfit - Quantification: Calibration curves, sample parsing, statistical analysis, batch processing
- Export: Excel reports and publication-quality plots
Installation
conda activate PeakPicker
pip install -r requirements.txt
Project Structure
src/
peakpicker/ # Main package (clean architecture)
application/ # Workflows and batch processing
baseline/ # Baseline correction strategies
config/ # Configuration dataclasses
domain/ # Domain models and enums
infrastructure/ # File I/O, exporters, signal processing
peak_analysis/ # Peak detection and deconvolution
quant/ # Quantification methods (public API: QuantMethod, StandardCurve)
Lab-specific code: plugins
The library is generic. Sample-name conventions, quantification presets and method-selection rules for a particular lab live outside this repository as plugins and method YAMLs — see docs/PLUGINS.md.
Related
- sci-toolkit — the lab's research
skill bundle. Its
scripts/hplc_parser.pyis a stdlib-only port of this project's peak detection for quick trace reads; itslab-data-analysisskill routes full quantification here.
Dependencies
numpy, pandas, scipy, matplotlib, openpyxl, lmfit, pybaselines, rainbow-api
Metadata
Release files for hplc-peakpicker 2.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| hplc_peakpicker-2.0.0.tar.gz | 97.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| hplc_peakpicker-2.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 227.0 kB
Release files / hplc_peakpicker-2.0.0.tar.gz
| Download URL | hplc_peakpicker-2.0.0.tar.gz |
|---|---|
| Size | 97.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a721956781225fb9ffddefbd37aae99e3d1bfab32dda8a8921ea4b6ea3d0a847
|
|
BLAKE2b-256 checksum How to use checksums |
b12ee57f341f6d1040013c4f3f6f49269e109b563894dd173eac14d8e1aeb026
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.5
|
Release files / hplc_peakpicker-2.0.0-py3-none-any.whl
| Download URL | hplc_peakpicker-2.0.0-py3-none-any.whl |
|---|---|
| Size | 130.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
f653ff49770b36661795a11e151c12126c269997b8acde8571b6d6ff27befb40
|
|
BLAKE2b-256 checksum How to use checksums |
c589b2d2dc955b0436733192cbd013e5fe6ec56467c31c762a0340775d9efe81
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.5
|