PyLACS : Python version Linear Analysis of Chemical Shifts(LACS)
PyLACS is a Python package for detecting and correcting chemical shift referencing errors in protein NMR spectroscopy datasets, using robust linear regression methods.
It provides both a Python API and a command-line interface (CLI) for use in research pipelines, HPC batch jobs, and interactive exploration.
✨ Features
- Detect and correct chemical shift referencing errors for Cα, Cβ, C, N, and H nuclei
- Robust regression methods:
- Tukey biweight
- Theil–Sen estimator
- RANSAC
- Quantile regression
- Bayesian regression (via PyMC + ArviZ)
- Option to chose different Random Coil chemical shifts
- Outlier detection and offset estimation
- Optional plot generation (scatter, regression fits)
- Works directly with BMRB NMR-STAR (.str) files
- Provides both a CLI (
pylacs) and a Python API
📦 Installation
Stable release from PyPI:
pip install pylacs
🚀 Quickstart
pylacs myfile.str --data-id my_data_id --method tukey --out results/
This will compute offsets, generate validation reports, and (if plotting is enabled) save plots in results folder
For help
pylacs --help
📖 Citation
If you use PyLACS in your research, please cite:
Wang, L., Eghbalnia, H. R., & Markley, J. L. (2005). Probabilistic approach to determining protein backbone torsion angles from NMR chemical shifts. Journal of Biomolecular NMR, 32(1), 13–22.
Baskaran, K., et al. (2025). PyLACS: Python-based Linear Analysis of Chemical Shifts pipeline. (manuscript in preparation)
Metadata
Release files for pylacs 1.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pylacs-1.0.1.tar.gz | 37.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pylacs-1.0.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 73.7 kB
Release files / pylacs-1.0.1.tar.gz
| Download URL | pylacs-1.0.1.tar.gz |
|---|---|
| Size | 37.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f251cfd45d67eba1fe90ab20c9331182d2d4e074d5e591ffcdf0ef91c9326e2e
|
|
BLAKE2b-256 checksum How to use checksums |
4d59a9961c17eca59f2a596e0ca30c2e834225362b6352b736bbc3e728d01cd4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.0
|
Release files / pylacs-1.0.1-py3-none-any.whl
| Download URL | pylacs-1.0.1-py3-none-any.whl |
|---|---|
| Size | 35.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
659d3017a841f6918a9cb89e97e0f46a43c83fd7a648d8f15018534377af749c
|
|
BLAKE2b-256 checksum How to use checksums |
1f72b432de14aaf84ef2cf4f22e6fc3ef0a5d3009eb09549d0783b62693d0962
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.0
|