Tool for creating standard curves and concentration calculations.
Project description
CaliPytion - Tool to create, apply, and document calibration models for concentration calculation
Overview
CaliPytion is a Python package for the creation, application, and documentation of calibration models for concentration calculations from a measured standard. This package allows for comparing different calibration models and selecting the best one based on various statistical metrics like R2, AIC, or RMSD. The selected model can then calculate the concentration of unknown samples from their measured signals. Furthermore, the calibration standard containing the calibration model and information on the used substance and measurement conditions can be exported in JSON and AnIML format for reuse and documentation.
Key Functionalities
- 📈 Model Fitting and Visualization:
Automatically fits different polynomial models to the data and provides interactive plots for visually comparing these models. - 🎯 Model Selection:
After fitting, a model overview is generated, allowing the user to select the best model based on the desired metric. - 🚷 Avoid Extrapolation:
It prevents the use of models outside the calibrated concentration range. However, by user choice, the model can be extrapolated to calculate concentrations outside the calibration range. - 🧪 Compatible with EnzymeML Documents:
CaliPytion can be used to convert the measured signals of an EnzymeML document into concentrations. - 📂 FAIR Data:
Calibration models are stored together with the standard data. Constituting a complete record of the calibration process, this data can be saved as a JSON or AnIML file.
Installation
CaliPytion can be installed via pip:
pip install calipytion
or directly from the source code:
pip install git+https://github.com/FAIRChemistry/CaliPytion.git
Minimal Example
from calipytion import Calibrator
# standard data
concentrations = [0, 0.5, 1, 1.5, 2, 2.5, 3, 3.5]
absorption = [0, 0.489, 1.056, 1.514, 1.988, 2.462, 2.878, 3.156]
# unknown data
unknowns = [0.3, 1, 1.345]
# initialize the calibrator
calibrator = Calibrator(
molecule_id="s0",
molecule_name="ABTS",
conc_unit="mmol / l",
concentrations=concentrations,
signals=absorption,
)
# fit and visualize model
calibrator.fit_models()
calibrator.visualize()
# choose cubic model
cubic_model = calibrator.get_model("cubic")
# calculate concentrations
print(calibrator.calculate_concentrations(cubic_model, unknowns))
# -> [0.30018883573518623, 0.9823197194444907, 1.3193203297973393]
Model Overview
| Model Name | AIC | R squared | RMSD | Equation | Relative Parameter Standard Errors |
|---|---|---|---|---|---|
| cubic | -56 | 0.9996 | 0.0205 | a * s0 + b * s0**2 + c * s0**3 | a: 4.6%, b: 67.4%, c: 33.6% |
| quadratic | -49 | 0.9991 | 0.0318 | a * s0 + b * s0**2 + c | a: 4.0%, b: 20.0%, c: 115.2% |
| linear | -37 | 0.9929 | 0.0891 | a * s0 | a: 1.7% |
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file calipytion-1.0.2.tar.gz.
File metadata
- Download URL: calipytion-1.0.2.tar.gz
- Upload date:
- Size: 1.3 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dcb1256c55cdb5ebac823432794d8a41f24fcbc0e177557dc9b5b0dd4a8554c2
|
|
| MD5 |
b2b9411354a6ec822308ea5128fcb35a
|
|
| BLAKE2b-256 |
8fb6fc9574c4e0aaa3ca3fc1b0baa5a9abd5552296cc62849fdd3dd7684d475c
|
Provenance
The following attestation bundles were made for calipytion-1.0.2.tar.gz:
Publisher:
deploy_pypi.yaml on FAIRChemistry/CaliPytion
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
calipytion-1.0.2.tar.gz -
Subject digest:
dcb1256c55cdb5ebac823432794d8a41f24fcbc0e177557dc9b5b0dd4a8554c2 - Sigstore transparency entry: 560185887
- Sigstore integration time:
-
Permalink:
FAIRChemistry/CaliPytion@3810b9d1d7506f3ffde45b0806bdd687853ab223 -
Branch / Tag:
refs/tags/v1.0.2 - Owner: https://github.com/FAIRChemistry
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
deploy_pypi.yaml@3810b9d1d7506f3ffde45b0806bdd687853ab223 -
Trigger Event:
push
-
Statement type:
File details
Details for the file calipytion-1.0.2-py3-none-any.whl.
File metadata
- Download URL: calipytion-1.0.2-py3-none-any.whl
- Upload date:
- Size: 24.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
90cf3387d5f312afd7b8e36e5ecda5222aaf24b397b540f3a4e5c5ce4e62ff0d
|
|
| MD5 |
e84c128c4798f797a4e2d79f426d1361
|
|
| BLAKE2b-256 |
ac661f00a3809eb9ae75f1e73c27e13392f04c7dccd6037642847de26c6fab82
|
Provenance
The following attestation bundles were made for calipytion-1.0.2-py3-none-any.whl:
Publisher:
deploy_pypi.yaml on FAIRChemistry/CaliPytion
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
calipytion-1.0.2-py3-none-any.whl -
Subject digest:
90cf3387d5f312afd7b8e36e5ecda5222aaf24b397b540f3a4e5c5ce4e62ff0d - Sigstore transparency entry: 560185897
- Sigstore integration time:
-
Permalink:
FAIRChemistry/CaliPytion@3810b9d1d7506f3ffde45b0806bdd687853ab223 -
Branch / Tag:
refs/tags/v1.0.2 - Owner: https://github.com/FAIRChemistry
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
deploy_pypi.yaml@3810b9d1d7506f3ffde45b0806bdd687853ab223 -
Trigger Event:
push
-
Statement type: