https://github.com/bayer-group/mocca

https://github.com/bayer-group/mocca

Science Score: 49.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 8 DOI reference(s) in README
  • Academic publication links
  • Committers with academic emails
    1 of 8 committers (12.5%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (15.0%) to scientific vocabulary

Keywords

beat-undefined

Keywords from Contributors

interactive archival projection generic sequences observability autograding hacking shellcodes modular
Last synced: 7 months ago · JSON representation

Repository

Basic Info
Statistics
  • Stars: 29
  • Watchers: 6
  • Forks: 9
  • Open Issues: 3
  • Releases: 1
Topics
beat-undefined
Created about 2 years ago · Last pushed 11 months ago
Metadata Files
Readme Contributing License Codeowners

readme.md

PyPI pytest Docs Pages Example Data

Welcome to MOCCA2

MOCCA2 is a Python package for automatic processing of HPLC chromatograms.

To automate your workflow and get accurate results, MOCCA2 features: - support for raw data files from Agilent, Shimadzu and Waters - automatic baseline correction - adaptive peak picking - automatic purity checking and peak deconvolution - compound tracking across chromatograms - fully automatic processing of any number of chromatograms

Documentation

Examples and detailed documentation are documented at https://bayer-group.github.io/MOCCA.

Getting Started

The latest version of MOCCA2 can be installed simply using pip:

pip install mocca2

Example data can be then downloaded using the following command:

python -m mocca2 --download-data

Now you are ready to process your first chromatogram!

``` from mocca2 import example_data from matplotlib import pyplot as plt

Load example data

chromatogram = exampledata.example1()

Correct the baseline

chromatogram.correct_baseline()

Crop the chromatogram to the region of interest, 1.4 to 1.8 minutes

chromatogram.extract_time(1.4, 1.8, inplace=True)

Exclude low wavelengths that tend to be noisy - ignore everything below 220 nm

chromatogram.extract_wavelength(220, None, inplace=True)

Find peaks in the chromatogram

chromatogram.findpeaks(minheight=2)

Deconvolve the peaks

print("Deconvolving peaks, this migth take a minute...")

chromatogram.deconvolvepeaks( model="FraserSuzuki", minr2=0.999, relaxeconcs=False, maxcomps=5 )

print("Deconvolved!")

Plot the chromatogram

chromatogram.plot() plt.show() ```

Publications and MOCCA

This package is based on MOCCA package by HaasCP. This work has been published by Christian Haas et al. in 2023.

Inspired by MOCCA, MOCCA2 features more Pythonic interface as well as adaptive and more accurate algorithms.

Publication featuring MOCCA2 is coming soon!

Repository Details

This repository automates numerous workflows:

Automatic testing

On push to main, all tests in the tests directory are automatically run. Currently, MOCCA2 is tested on Ubuntu with Python 3.10, 3.11 and 3.12.

Docs

On push to main, the Sphinx docs are automatically compiled and published to GitHub pages.

Example data

The repository contains various example datasets: - Knoevenagel condensation (Christian Haas et al., 2023) - Cyanation screening (Christian Haas et al., 2023) - Diterpene esters from coffee extracts (Erny et al., 2021) - and various standalone chromatograms

Since these datasets don't fit into the PyPI package size limit, they are automatically compressed and published onto example-data branch on push to main.

The data can be automatically downloaded using python -m mocca2 --download-data.

Publishing to PyPI and GitHub

On push to main, the MOCCA2 package is automatically published to PyPI and GitHub Releases.

Contributing

The process for contributing is outlined in CONTRIBUTING.md.

Owner

  • Name: Bayer Open Source
  • Login: Bayer-Group
  • Kind: organization

Science for a better life

GitHub Events

Total
  • Issues event: 1
  • Watch event: 15
  • Delete event: 1
  • Issue comment event: 1
  • Push event: 2
  • Pull request review event: 4
  • Pull request event: 6
  • Fork event: 7
Last Year
  • Issues event: 1
  • Watch event: 15
  • Delete event: 1
  • Issue comment event: 1
  • Push event: 2
  • Pull request review event: 4
  • Pull request event: 6
  • Fork event: 7

Committers

Last synced: about 1 year ago

All Time
  • Total Commits: 27
  • Total Committers: 8
  • Avg Commits per committer: 3.375
  • Development Distribution Score (DDS): 0.741
Past Year
  • Commits: 27
  • Committers: 8
  • Avg Commits per committer: 3.375
  • Development Distribution Score (DDS): 0.741
Top Committers
Name Email Commits
m-lueb 1****b 7
RachelNicholls1 9****1 7
Jan Oboril 9****l 7
lowprices 8****s 2
dependabot[bot] 4****] 1
Stanislav Bashkyrtsev s****v@e****o 1
jpfolch j****h@o****m 1
tpaul t****l@e****h 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 8 months ago

All Time
  • Total issues: 2
  • Total pull requests: 20
  • Average time to close issues: about 1 month
  • Average time to close pull requests: 21 days
  • Total issue authors: 2
  • Total pull request authors: 8
  • Average comments per issue: 0.0
  • Average comments per pull request: 0.05
  • Merged pull requests: 16
  • Bot issues: 0
  • Bot pull requests: 1
Past Year
  • Issues: 2
  • Pull requests: 10
  • Average time to close issues: about 1 month
  • Average time to close pull requests: about 2 months
  • Issue authors: 2
  • Pull request authors: 7
  • Average comments per issue: 0.0
  • Average comments per pull request: 0.1
  • Merged pull requests: 7
  • Bot issues: 0
  • Bot pull requests: 1
Top Authors
Issue Authors
  • IbkPLT (1)
  • akirayou (1)
Pull Request Authors
  • RachelNicholls1 (9)
  • m-lueb (7)
  • oboril (5)
  • IbkPLT (2)
  • dependabot[bot] (2)
  • jpfolch (1)
  • ctapobep (1)
  • ivanmilevtues (1)
Top Labels
Issue Labels
Pull Request Labels
dependencies (2)

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 1,077 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 27
  • Total maintainers: 1
pypi.org: mocca2

MOCCA2 is an open-source Python project to analyze HPLC-DAD raw data

  • Versions: 27
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 1,077 Last month
Rankings
Dependent packages count: 9.6%
Average: 36.4%
Dependent repos count: 63.2%
Maintainers (1)
Last synced: 7 months ago