Curve fitting algorithms for bio-assays with scikit-learn api
Project description
bio-curve-fit
A Python package for fitting common dose-response and standard curve models. Designed to follow the scikit-learn api.
Quickstart
Installation
pip install bio-curve-fit
We recommend using python virtual environments to manage your python packages in an isolated environment. Example:
python -m venv venvname
source venvname/bin/activate
Example usage:
from bio_curve_fit.logistic import FourPLLogistic
# Instantiate model
model = FourPLLogistic()
# create some example data
standard_concentrations = [1, 2, 3, 4, 5]
standard_responses = [0.5, 0.55, 0.9, 1.25, 1.55]
# fit the model
model.fit(
standard_concentrations,
standard_responses,
)
# interpolate the response for new concentrations
model.predict([1.5, 2.5])
# interpolate the concentration for new responses
model.predict_inverse([0.1, 1.0])
Calculate and plot the curve and limits of detection:
plot_standard_curve(standard_concentrations, standard_responses, model, show_plot=True)
You can also customize the plot arbitrarily using matplotlib. For example, adding labels to the points:
from adjustText import adjust_text
fig, ax = plot_standard_curve_figure(standard_concentrations, standard_responses, model)
texts = []
for x, y in zip(standard_concentrations, standard_responses):
texts.append(ax.text(x, y, f"x={x:.2f}, y={y:.2f})", fontsize=13, ha="right"))
# Adjust text labels to avoid overlap
adjust_text(texts, ax=ax)
Examples
See the example notebooks for more detailed usage.
Contributing
Contributions are welcome! We built this package to be useful for our own work, but we know there is more to add. Please see CONTRIBUTING.md for more information.
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
File details
Details for the file bio_curve_fit-0.2.2.tar.gz
.
File metadata
- Download URL: bio_curve_fit-0.2.2.tar.gz
- Upload date:
- Size: 9.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.12.5 Linux/6.5.0-1025-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | eb4baad6906c702aafb72a4418620d9ed400c27a2dec7e8e6436b1593a73fb22 |
|
MD5 | ef80d258acd01623802d32070f9f1de0 |
|
BLAKE2b-256 | 9666a6a9ab172cc3e33204818afd7842474c61a8d4c7b24f6f8f5e3e15744b01 |
File details
Details for the file bio_curve_fit-0.2.2-py3-none-any.whl
.
File metadata
- Download URL: bio_curve_fit-0.2.2-py3-none-any.whl
- Upload date:
- Size: 10.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.12.5 Linux/6.5.0-1025-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 628197bb1ceb075b1b1539d7a8aa94c2d8ea26c3d8e44e2df103ab673f8eeb3e |
|
MD5 | f24e4ba5d99fa2a1da1d6b658fba87a6 |
|
BLAKE2b-256 | d91ccad75ccd61d81cd103037a57a354fcbda13684fc9707fb486c60b16669f1 |