Skip to main content

RamanSPy: An open-source Python package for integrative Raman spectroscopy data analysis

Project description

RamanSPy logo

Downloads contributions welcome

RamanSPy is an open-source Python package for integrative Raman spectroscopy data analysis.

Overview of RamanSPy

Key features

  • Common data format
  • Data loaders
  • Preprocessing methods
  • Preprocessing pipelining
  • Preprocessing protocols
  • Analysis methods
  • AI & ML integration
  • Visualisation tools
  • Datasets
  • Synthetic data generator
  • Metrics

Installation

RamanSPy has been published on PyPI and can be installed via pip:

pip install ramanspy

Code example

Below is a simple example of how RamanSPy can be used to load, preprocess and analyse Raman spectroscopic data. Here, we load a data file from a commercial Raman instrument; apply a preprocessing pipeline consisting of spectral cropping, cosmic ray removal, denoising, baseline correction and normalisation; perform spectral unmixing; and visualise the results.

import ramanspy as rp

# load data
image_data = rp.load.witec("<PATH>")

# apply a preprocessing pipeline
pipeline = rp.preprocessing.Pipeline([
    rp.preprocessing.misc.Cropper(region=(700, 1800)),
    rp.preprocessing.despike.WhitakerHayes(),
    rp.preprocessing.denoise.SavGol(window_length=9, polyorder=3),
    rp.preprocessing.baseline.ASPLS(),
    rp.preprocessing.normalise.MinMax()
])
data = pipeline.apply(image_data)

# perform spectral unmixing
nfindr = rp.analysis.unmix.NFINDR(n_endmembers=5)
amaps, endmembers = nfindr.apply(data)

# plot results
rp.plot.spectra(endmembers)
rp.plot.image(amaps)
rp.plot.show()

Documentation

For more information about the functionalities of the package, refer to the documentation.

Credits

If you use this package for your research, please cite our paper:

Georgiev, D.; Pedersen, S. V.; Xie, R.; Fernández-Galiana, Á.; Stevens, M. M.; Barahona, M. RamanSPy: An open-source Python package for integrative Raman spectroscopy data analysis. ACS Analytical Chemistry 2024, 96(21), 8492-8500, DOI: 10.1021/acs.analchem.4c00383

@article{georgiev2024ramanspy,
    title={RamanSPy: An open-source Python package for integrative Raman spectroscopy data analysis},
    author={Georgiev, Dimitar and Pedersen, Simon Vilms and Xie, Ruoxiao and Fern{\'a}ndez-Galiana, Alvaro and Stevens, Molly M and Barahona, Mauricio},
    journal={Analytical Chemistry},
    volume={96},
    number={21},
    pages={8492-8500},
    year={2024},
    doi={10.1021/acs.analchem.4c00383}
}

Also, if you find RamanSPy useful, please consider leaving a star on GitHub.

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

ramanspy-0.2.10.tar.gz (40.8 kB view details)

Uploaded Source

Built Distribution

ramanspy-0.2.10-py3-none-any.whl (47.0 kB view details)

Uploaded Python 3

File details

Details for the file ramanspy-0.2.10.tar.gz.

File metadata

  • Download URL: ramanspy-0.2.10.tar.gz
  • Upload date:
  • Size: 40.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for ramanspy-0.2.10.tar.gz
Algorithm Hash digest
SHA256 e3e5fce69de0b6e845ed15c68d3adfc76513d7f3f01a594cc266ce838cb5aa34
MD5 d44e0cdcc4e1970a2690773d6d6e823f
BLAKE2b-256 91fe328782e78d0b9f4ce13e6f86a7c5f6a7f06089e8115d3473cd48ec18bac7

See more details on using hashes here.

File details

Details for the file ramanspy-0.2.10-py3-none-any.whl.

File metadata

  • Download URL: ramanspy-0.2.10-py3-none-any.whl
  • Upload date:
  • Size: 47.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for ramanspy-0.2.10-py3-none-any.whl
Algorithm Hash digest
SHA256 4b034b6ed65e372ba0efa31e7463f7da59ed181c704a483b550b01fdf40665b4
MD5 4e9163651e996084e429b075d50ee035
BLAKE2b-256 e0b424e6f1bb9e1a8a773fdc3fb4830c90bbd68ba00c1583e83349798afa8856

See more details on using hashes here.

Supported by

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