Skip to main content

Python tools for pharmacokinetic calculations.

Project description

pharmacokinetics

downloads repo-size

The pharmacokinetics package is a Python package designed to make pharmacokinetic formulas easier to calculate in your Python code.

Usage

Some functions will use kwargs, which will allow the ability to use alternatives to values, e.g. the parameter t12 can be used instead of ke, which will convert the elimination half-life to the elimination rate constant with the following formula:

$\Large{\frac{\ln2}{t^{1/2}}}$

[!NOTE] Remember to make sure your units match!

Calculating Concentrations

Calculating the concentration remaining after an elapsed time after peak concentration using the formula $C \cdot e^{-k_et}$:

import pharmacokinetics as pk
pk.single_dose.calculateRemaining(initial_concentration=10, time_elapsed=4, t12=9)

The above code will calculate the remaining concentration of a drug that has reached peak concentration 4 hours ago with an elimination half-life of 9 hours.

The formula to this function:
$10 \ mg \cdot e^{-\frac{\ln2}{9 \ h}4 \ h}=7.35 \ mg$

To calculate the concentration at any time $T$ (oral administration), the usage is:

import pharmacokinetics as pk
pk.concentrationAtTime(
    dose=200,
    vd=0.7,
    bioavailability=0.99,
    t12=4.5,
    t12abs=7/60,
    elapsed=6
)

This above code follows the formula:

$\frac{F \cdot D \cdot k_a}{Vd(k_a - k_e)}(e^{-k_e \cdot t} - e^{-k_a \cdot t})$

Alternatively, interval can be used if the drug is taken at intervals, this will use the formula:

$\Large{\frac{F \cdot D \cdot k_a}{Vd(k_a - k_e)}(\frac{e^{-k_e \cdot t}}{1 - e^{-k_e \cdot \tau}} - \frac{e^{-k_a \cdot t}}{1 - e^{-k_a \cdot \tau}})}$

Solving Values

Half-lives can be solved if the initial concentration, remaining concentration, and time elapsed are known:

import pharmacokinetics as pk
pk.single_dose.halflifeFromDoses(
    dose=15,
    dose=9,
    elapsed=9
)

Where the time elapsed is the time past since the drug has reached maximum concentration and begins the elimination phase, which will then follow the formula $C = e^{-x \cdot 9 \ h}$ where $x$ is the elimination rate constant. Solving for $x$ becomes $\frac{\ln(\frac{9}{15})}{9} = -k_e$ to get half-life we use $\frac{\ln2}{|-k_e|} = 12.2 \ h$.

Calculating Peak Time

If a drug's absorption and elimination constants are known, the tmax can be calculated:

import pharmacokinetics as pk
pk.calculateTmax(t12=9, t12abs=0.75)

The formula to this calculation: $\frac{1}{k_a - k_e} \ln(\frac{ka}{ke}) = \frac{\ln(\frac{k_a}{k_e})}{k_a - k_e} = T_{max}$, which results in a tmax of 2.93 hours.

Disclaimers

This package uses real formulas, but that does not mean it is free from errors, for example, bugs and typos can result in inaccurate info.
If any bugs or inaccuracies are seen, open an issue so it can be fixed.

Developers

If you intend to install the edited package, create a wheel file:

$ pip3 install setuptools # required to build package (skip if already installed)
$ python3 -m build # builds the package to a wheel file

To install this, I recommend creating a virtual environment:

$ python3 -m venv .venv # creates virtual environment
$ source .venv/bin/activate # activates the virtual environment

Now use pip install with the file that was just created.
To deactivate the virtual environment:

$ deactivate

Contributing

Contributions must not break the code or change formulas.
Contributions that can possibly be accepted:

  • fixed typos
  • fixed bugs
  • new formulas (source required)

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

pharmacokinetics-0.1.tar.gz (7.6 kB view details)

Uploaded Source

Built Distribution

pharmacokinetics-0.1-py3-none-any.whl (9.3 kB view details)

Uploaded Python 3

File details

Details for the file pharmacokinetics-0.1.tar.gz.

File metadata

  • Download URL: pharmacokinetics-0.1.tar.gz
  • Upload date:
  • Size: 7.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.4

File hashes

Hashes for pharmacokinetics-0.1.tar.gz
Algorithm Hash digest
SHA256 356c2e8391351afb719eeb56a8e034d3a6823e0d5c9b44b2f3eddc56512d42ef
MD5 31a808c0350d80169107f6b09016715d
BLAKE2b-256 c23f346a474d78c55f3003990fb17351686db303c513cbeb59877c2e66ed4bca

See more details on using hashes here.

File details

Details for the file pharmacokinetics-0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for pharmacokinetics-0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 da33a19379f9d11e6ce9ae43561f1fe6452dc57475f60bfee8ac77faddc03dee
MD5 ee732d51bdf2b909c6c55f2f09cbf371
BLAKE2b-256 e041ccb0fa5982472b2512e1ef0fdbb26ddd08c376bf293e491b38283a4d9733

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