opendose_poppk.CovariateModel
- class opendose_poppk.CovariateModel(pk: PKModel, omega: dict | None = None, betas: dict | None = None, references: dict | None = None)
Apply covariates to PK parameters via Power Model.
Formula
θᵢ = θ_pop · ∏ (COVₖ / refₖ)^βₖ · exp(ηᵢ)
- Where:
θ_pop → typical population parameter COVₖ → patient’s covariate value refₖ → reference value (median) βₖ → effect coefficient (beta) ηᵢ → random deviation ~ N(0, ω²)
Example
>>> pk = PKModel(F=0.8, ka=1.8, ke=0.28, Vd=65) >>> cov = CovariateModel(pk) >>> p = cov.individualize({"weight": 90, "crcl": 50}, sex="M") >>> print(p) # {"F": ..., "ka": ..., "ke": ..., "Vd": ...}
- __init__(pk: PKModel, omega: dict | None = None, betas: dict | None = None, references: dict | None = None)
Methods
__init__(pk[, omega, betas, references])add_covariate(name, reference, betas)Register a new covariate.
individualize(covariates[, sex, rng])Generate individual PK parameters with covariates + IIV.
set_beta(covariate, param, beta)Update the beta coefficient of a covariate.