Skip to main content

PyLACS : Python version Linear Analysis of Chemical Shifts(LACS)

PyPI version Python Versions License: MIT

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)

Source distribution for pylacs 1.0.1
File Size Uploaded
pylacs-1.0.1.tar.gz 37.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pylacs 1.0.1
File Interpreter ABI Platform
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

Release history Release notifications | RSS feed

This release

1.0.1 This release

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page