Skip to main content

A package for fitting benchmark dose curves to dichotomous data and light photomotor response data

Project description

bmdrc

Python library for the calculation of BenchMark Dose Response Curves (bmdrc)

General Schematic

The bmdrc library was built to calculate benchmark dose (BMD) response curves for dichotomous (morphological) and light photomotor response datasets, where continuous variables are transformed to dichotomous as described in Thomas et al 2019. Potential outputted files include a csv file of all final BMDs and their estimation errors, a csv file of model fits (AIC) for each endpoint, and an html report containing information on how much data was filtered and why, as well as interactive response curve plots. Users may specify their outputs of interest.

General bmdrc inputs and outputs

  1. Input Data Module: Import data into the python library

  2. Pre-Processing Module: Combine and remove endpoints as needed

  3. Filtering Modules: Apply the EPA recommendations for filtering

  4. Model Fitting Modules: Fit EPA-recommended models to data

  5. Output Modules: Select tables to output as csvs. View plots in a HTML report.

How to install the package

First, install the package from pip using:

pip install bmdrc

Or from github using:

pip install git+https://github.com/PNNL-CompBio/bmdrc

How to use the package

Vignettes

An example vignette for the dichotomous (binary) data (when plate and well information is available) is located here and an example vignette for when only chemical, endpoint, concentration, and response (ranging from 0-1) information is available is located here. For the light photomotor response data (continuous converted to dichotomous), a vignette is located here.

Example Data

Example data for dichotomous and light photomotor response data can be found here.

Example Report

A sample for the generated report for dichotomous (binary) data can be found here

A sample for the generated report for light photomotor response data can be found here

Test function coverage using coverage.py

Name Stmts Miss Cover
bmdrc/BinaryClass.py 138 0 100%
bmdrc/LPRClass.py 211 0 100%
bmdrc/filtering.py 146 0 100%
bmdrc/model_fitting.py 687 5 99%
bmdrc/output_modules.py 125 2 98%
bmdrc/preprocessing.py 59 0 100%
TOTAL 1366 7 99%

Data Classes

For datasets with plates and wells, use the BinaryClass object as it contains specific pre-processing and filtering functions that pertain to plates and well. Each value should be 0, 1, or NA, and bmdrc will calculate the response column. If your data does not contain plates and wells, use the SimplifiedClass object which only requires chemical, endpoint, concentration, and response information. The response must be between 0 and 1. If your data is light photomotor response use the LPRClass object. The continuous data will be transformed to dichotomous.

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

bmdrc-0.0.1.3.tar.gz (29.6 kB view details)

Uploaded Source

File details

Details for the file bmdrc-0.0.1.3.tar.gz.

File metadata

  • Download URL: bmdrc-0.0.1.3.tar.gz
  • Upload date:
  • Size: 29.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.7

File hashes

Hashes for bmdrc-0.0.1.3.tar.gz
Algorithm Hash digest
SHA256 d2dda4dc80c23ac72cf3d5ce8b749df089145ceef49aff1f0da169300106a8a5
MD5 a68fef9a6cec3b798781ec92bb68ae39
BLAKE2b-256 69cb92fca55867310036c9568f7b0c2286d3b63dad0e6ee3e251b9a32280e696

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