Learn R Programming

clinPK (version 0.13.0)

calc_egfr: Calculate eGFR

Description

Calculate the estimated glomerular filtration rate (an indicator of renal function) based on measured serum creatinine using one of the following approaches:

  • Cockcroft-Gault (using weight, ideal body weight, or adjusted body weight)

  • C-G spinal cord injury (using correction factor of 0.7, representing median correction point reported in the original publication (parapalegic patients: 0.8; tetrapalegic patients: 0.6))

  • Revised Lund-Malmo

  • Modification of Diet in Renal Disease study (MDRD; with or without consideration of race, using either the original equation (published 2001) or the equation updated to reflect serum creatinine assay standardization (2006))

  • CKD-EPI (with or without consideration of race, or 2021 re-fit without race)

  • Schwartz

  • Schwartz revised / bedside

  • Jelliffe

  • Jelliffe for unstable renal function. Note that the 15 P_adj recommended for hemodialysis patients is not included in this implementation.

  • Wright equation for eGFR in cancer patients, with creatinine measured using the Jaffe assay.

Equations for estimation of eGFR from Cystatin C concentrations are available from the `calc_egfr_cystatin()` function.

Usage

calc_egfr(
  method = "cockcroft_gault",
  sex = NULL,
  age = NULL,
  scr = NULL,
  scr_unit = NULL,
  race = "other",
  weight = NULL,
  height = NULL,
  bsa = NULL,
  preterm = FALSE,
  ckd = FALSE,
  times = NULL,
  bsa_method = "dubois",
  relative = NULL,
  unit_out = "mL/min",
  verbose = TRUE,
  min_value = NULL,
  max_value = NULL,
  fail = TRUE,
  ...
)

Arguments

method

eGFR estimation method, choose from `cockcroft_gault`, `cockcroft_gault_ideal`, `cockcroft_gault_adjusted`, `cockcroft_gault_adaptive`, `mdrd`, `mdrd_ignore_race`, `mdrd_original`, `mdrd_original_ignore_race`, `ckd_epi`, `ckd_epi_ignore_race`, `ckd_epi_as_2021`, `malmo_lund_revised`, `schwartz`, `jelliffe`, `jellife_unstable`, `wright`.

sex

sex

age

age, in years

scr

serum creatinine (mg/dL)

scr_unit,

`mg/dL` or `micromol/L` (==`umol/L`)

race

`black` or `other`, Required for CKD-EPI and MDRD methods for estimating GFR. To use these methods without race, use `method = "ckd_epi_ignore_race"`, `method = "ckd_epi_as_2021"`, `method = "mdrd_ignore_race"` or `method = "mdrd_original_ignore_race"`. See Note section below for important considerations when using race as a predictive factor in eGFR.

weight

weight, in `kg`

height

height, in `cm`, used for converting to/from BSA-normalized units.

bsa

body surface area

preterm

is patient preterm? Used for Schwartz method.

ckd

chronic kidney disease? Used for Schwartz method.

times

vector of sampling times (in days!) for creatinine (only used in Jelliffe equation for unstable patients)

bsa_method

BSA estimation method, see `calc_bsa()` for details

relative

`TRUE`/`FALSE`. Report eGFR as per 1.73 m2? Requires BSA if re-calculation required. If `NULL` (=default), will choose value typical for `method`.

unit_out

`ml/min` (default), `L/hr`, or `mL/hr`

verbose

verbosity, show guidance and warnings. `TRUE` by default

min_value

minimum value (`NULL` by default). The cap is applied in the same unit as the `unit_out`.

max_value

maximum value (`NULL` by default). The cap is applied in the same unit as the `unit_out`.

fail

invoke `stop()` if not all covariates available?

...

arguments passed on to `calc_abw` or `calc_dosing_weight`

References

Examples

Run this code
calc_egfr(sex = "male", age = 50, scr = 1.1, weight = 70)
calc_egfr(sex = "male", age = 50, scr = 1.1, weight = 70, unit_out = "L/hr")
calc_egfr(sex = "male", age = 50, scr = 1.1, weight = 70, bsa = 1.8, method = "ckd_epi")
calc_egfr(sex = "male", age = 50, scr = c(1.1, 0.8),
  weight = 70, height = 170, method = "jelliffe")
calc_egfr(sex = "male", age = 50, scr = c(1.1, 0.8),
  weight = 70, height = 170, method = "jelliffe_unstable")
calc_egfr(sex = "male", age = 50, scr = 1.1,
  weight = 70, bsa = 1.6, method = "malmo_lund_revised", relative = FALSE)

Run the code above in your browser using DataLab