| Title: | Calculators for Insulin and Glucagon Release Indices |
|---|---|
| Description: | Facilitates the calculation of validated pancreatic islet hormone-release indices from fasting and oral glucose tolerance test (OGTT) measurements. Provides beta-cell insulin release indices (including HOMA-beta, corrected insulin response, Stumvoll first-phase index, BIGTT-AIR, and disposition indices) as described in Madsen (2024) <doi:10.1038/s42255-024-01140-6>, alongside alpha-cell glucagon release and glucagon resistance indices derived from the glucagon-suppression and liver-alpha-cell-axis literature. Enables reproducible assessment of beta-cell and alpha-cell function for metabolic and endocrine research. |
| Authors: | Sufyan Suleman [aut, cre] (ORCID: <https://orcid.org/0000-0001-6612-6915>) |
| Maintainer: | Sufyan Suleman <[email protected]> |
| License: | MIT + file LICENSE |
| Version: | 0.0.1 |
| Built: | 2026-07-17 09:08:14 UTC |
| Source: | https://github.com/sufyansuleman/isletcalc |
A simulated dataset of 50 subjects with fasting and 75 g oral glucose tolerance test (OGTT) glucose, insulin and glucagon values, for use in the package examples, vignette and tests. Values are randomly generated and are not derived from real subjects.
example_dataexample_data
A data frame with 50 rows and 11 variables:
Glucose (mmol/L) at 0, 30 and 120 min.
Insulin (pmol/L) at 0, 30 and 120 min.
Sex, coded 1 = male, 0 = female.
Body mass index (kg/m^2).
Glucagon (pmol/L) at 0, 30 and 120 min.
Simulated; see data-raw/example_data.R.
Calculates surrogate indices of alpha-cell glucagon secretion magnitude from fasting and oral glucose tolerance test (OGTT) glucagon measurements.
glucagon_release(data)glucagon_release(data)
data |
A data frame containing |
Expected units: glucagon values in pmol/L (or another consistent molar
unit), measured at fasting (0 min), 30 min and 120 min after a 75 g OGTT.
Fasting_glucagon requires only Glucagon0. Glucagon_auc additionally
requires Glucagon30 and Glucagon120; if either is missing, Glucagon_auc
is skipped with a warning.
Indices calculated:
Fasting_glucagon: fasting plasma glucagon (pass-through of Glucagon0).
Glucagon_auc: trapezoidal area under the glucagon curve across 0, 30
and 120 min.
The input data frame with the requested index columns appended.
data(example_data) glucagon_release(example_data)data(example_data) glucagon_release(example_data)
Calculates surrogate indices of glucagon resistance / failure of glucose-induced glucagon suppression, reflecting impaired hepatic glucagon signaling as described in the liver-alpha-cell-axis literature.
glucagon_resistance(data)glucagon_resistance(data)
data |
A data frame containing |
Expected units: glucagon and insulin in a consistent molar unit (e.g. pmol/L), measured at fasting (0 min) and 120 min after a 75 g OGTT. If a required column is missing, the corresponding index is skipped with a warning.
Indices calculated:
Glucagon_suppression_ratio: Glucagon120 / Glucagon0. Values at or
above 1 indicate failure to suppress glucagon after a glucose load, a
marker of glucagon resistance.
Glucagon_insulin_ratio: fasting Glucagon0 / I0, reported to
correlate with whole-body insulin sensitivity and beta-cell function.
The input data frame with the requested index columns appended.
Chen X, Maldonado E, DeFronzo RA, Tripathy D (2021). Impaired Suppression of Glucagon in Obese Subjects Parallels Decline in Insulin Sensitivity and Beta-Cell Function. J Clin Endocrinol Metab, 106(5), 1398-1409. doi:10.1210/clinem/dgab019
data(example_data) glucagon_resistance(example_data)data(example_data) glucagon_resistance(example_data)
Calculates surrogate indices of beta-cell insulin secretion from fasting and oral glucose tolerance test (OGTT) glucose/insulin measurements.
insulin_release(data, category = c("fasting", "ogtt"))insulin_release(data, category = c("fasting", "ogtt"))
data |
A data frame containing the columns required for the requested
|
category |
Character vector selecting which indices to calculate.
One or both of |
Required columns per category:
fasting: "G0", "I0"
ogtt: "G0", "I0", "G30", "I30", "G120", "I120", "sex", "bmi"
Expected units: glucose (G0, G30, G120) in mmol/L, insulin (I0,
I30, I120) in pmol/L, bmi in kg/m^2, and sex as a male indicator
(male = 1, female = 0). The BIGTT-AIR and BIGTT-SI terms enter sex
as a linear multiplier, so any value other than 1 is treated as female;
females coded as 2 are handled correctly. Internally, insulin is
converted from pmol/L to microU/mL (value * 0.1667) and glucose from
mmol/L to mg/dL (value * 18) where the source formula was derived in
those units.
If a required column is missing, the corresponding indices are skipped
with a warning; missing values within a present column yield NA only
for the indices that depend on them.
Indices calculated:
Homa_beta (fasting): HOMA-beta, an estimate of steady-state beta-cell
function.
Cir (ogtt): Corrected Insulin Response.
Stumvoll (ogtt): Stumvoll first-phase insulin release index.
Xinsdg30 (ogtt): insulinogenic index using the 0-30 min glucose
increment.
Xinsg30 (ogtt): insulinogenic index using the 30 min glucose value.
Di (ogtt): Disposition Index, transcribed exactly as reported in
the Madsen (2024) index table:
Xinsg30 * 1000 / (sqrt(G0_mgdl * I0_uU) * meanG_mgdl * meanI_uU).
Bigtt_air (ogtt): BIGTT Acute Insulin Response.
Dibig (ogtt): Disposition Index (Bigtt_air-based).
The input data frame with the requested index columns appended.
Madsen AL, et al. (2024). Genetic architecture of oral glucose-stimulated insulin release provides biological insights into type 2 diabetes aetiology. Nature Metabolism. doi:10.1038/s42255-024-01140-6
data(example_data) insulin_release(example_data, category = "fasting") insulin_release(example_data, category = c("fasting", "ogtt"))data(example_data) insulin_release(example_data, category = "fasting") insulin_release(example_data, category = c("fasting", "ogtt"))