Skip to main content

Robust LACS offsets, uncertainties, outliers, and plots from NMR-STAR files

Project description

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)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pylacs-1.0.1.tar.gz (37.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pylacs-1.0.1-py3-none-any.whl (35.8 kB view details)

Uploaded Python 3

File details

Details for the file pylacs-1.0.1.tar.gz.

File metadata

  • Download URL: pylacs-1.0.1.tar.gz
  • Upload date:
  • Size: 37.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.0

File hashes

Hashes for pylacs-1.0.1.tar.gz
Algorithm Hash digest
SHA256 f251cfd45d67eba1fe90ab20c9331182d2d4e074d5e591ffcdf0ef91c9326e2e
MD5 c47a03ea06ab1f0ed8192c310df62c2b
BLAKE2b-256 4d59a9961c17eca59f2a596e0ca30c2e834225362b6352b736bbc3e728d01cd4

See more details on using hashes here.

File details

Details for the file pylacs-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: pylacs-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 35.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.0

File hashes

Hashes for pylacs-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 659d3017a841f6918a9cb89e97e0f46a43c83fd7a648d8f15018534377af749c
MD5 1baa06e469f94868adeb8b90654017f5
BLAKE2b-256 1f72b432de14aaf84ef2cf4f22e6fc3ef0a5d3009eb09549d0783b62693d0962

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page