Skip to content

nca.bioavailability

Absolute and relative bioavailability from two non-compartmental analyses.

The fraction of a dose which reaches the systemic circulation is not measured directly: it is the exposure of the test treatment against the exposure of a reference treatment, both divided by their dose,

\[F = \frac{\mathrm{AUC}_\mathrm{test} / D_\mathrm{test}} {\mathrm{AUC}_\mathrm{ref} / D_\mathrm{ref}}.\]

With an intravenous reference, whose fraction absorbed is 1 by definition, this is the absolute bioavailability \(F_\mathrm{abs}\) (CDISC FABS); with any other reference - another formulation, another route, a fed against a fasted state - it is the relative bioavailability \(F_\mathrm{rel}\) (CDISC FREL). The FDA bioavailability guidance asks for exactly this comparison, and PKNCA computes it as pk.calc.f.

bioavailability is the geometric mean ratio of the dose normalized exposures with its confidence interval, the same estimator a bioequivalence study uses (pkpdutils.stats.ratio): the exposures are log-normal, the subjects of a crossover are paired and the interval is a t interval on the log scale.

is_intravenous

is_intravenous(result)

Whether a result comes from an intravenous analysis.

A result which names the route of its batch (attrs["route"], or the coordinate route when every sample was given the same one) is read there. Otherwise the variables the route decides answer it: an intravenous analysis reports cl, vz and vss (and c0 after a bolus) where an extravascular one reports cl_f and vz_f.

Parameters:

Name Type Description Default
result NCAResult

the result

required

Returns:

Type Description
bool

True for an intravenous route, or when the result carries an

bool

intravenous variable and no extravascular one.

bioavailability

bioavailability(
    test,
    reference,
    *,
    dim,
    parameter="auc_inf_obs",
    paired=None,
    ci_level=0.9,
    reference_route=None,
)

Absolute or relative bioavailability of a test against a reference analysis.

The dose normalized exposure of every subject (NCAResult.dose_normalized, \(x / D\)) of both results is compared as a geometric mean ratio with its confidence interval (pkpdutils.stats.ratio),

\[F = \frac{\mathrm{AUC}_\mathrm{test} / D_\mathrm{test}} {\mathrm{AUC}_\mathrm{ref} / D_\mathrm{ref}},\]

paired by the label of dim when both results carry the same subjects (a crossover) and unpaired otherwise (a parallel design, the Welch interval). The name of the result says which quantity it is: f_abs with an intravenous reference, whose fraction absorbed is 1, and f_rel with any other one.

Parameters:

Name Type Description Default
test NCAResult

the analysis of the test treatment

required
reference NCAResult

the analysis of the reference treatment

required

Other Parameters:

Name Type Description
dim str

the sample dimension of the subjects of both results

parameter str

the exposure to compare, auc_inf_obs by default; auc_last and auc_tau are the other usual choices

paired bool | None

pair the subjects by label; None pairs when both results carry the same labels (pkpdutils.stats.ratio)

ci_level float

level of the interval, 0.90 as in bioequivalence

reference_route Route | None

the route of the reference treatment; None reads it off the variables of the reference result (is_intravenous)

Returns:

Type Description
RatioResult

The ratio, named f_abs or f_rel, with the unit dimensionless:

RatioResult

the exposures are divided by their dose before they are compared.

Raises:

Type Description
ValueError

if a result carries no dose (NCAResult.dose_normalized), if parameter is not a parameter of both results or if dim is not a sample dimension of both.