The purpose of this document is to describe the standard workflow used to process dynamic perifusion data from human isolated islets in the IIDP / HPAP cohorts. The pipeline converts raw time-series hormone secretion measurements into donor-level quantitative traits (features) for insulin (INS) and glucagon (GCG), under multiple experimental stimuli.
Dynamic perifusion is an ex vivo assay in which isolated human islets are perfused in a flow chamber while the perfusate composition is changed over time. Hormone secretion is measured as a time series in response to step stimuli (for example, glucose, IBMX, epinephrine, and KCl).
The same functional secretion traces are normalized by two methods:
ng/100 IEQ/minpg/100 IEQ/min% content/min for both INS and GCG.INS and GCG secretion is measured during the following stimulation windows:
| Stimulus | Time (min) |
|---|---|
| 5.6 mM Glu | 3–9 |
| 16.7 mM Glu | 12–39 |
| 5.6 mM Glu | 42–60 |
| 16.7 mM Glu + 100 µM IBMX | 63–69 |
| 5.6 mM Glu | 72–90 |
| 1.7 mM Glu + 1 µM Epinephrine/HCl | 93–99 |
| 5.6 mM Glu | 102–120 |
| 5.6 mM Glu + 20 mM KCl | 123–129 |
| 5.6 mM Glu | 132–150 |
Traits are extracted from the time-series data. Approximate phase timeline and how it maps to trait names:
| Phase | Approx. time | Description | Typical use in traits |
|---|---|---|---|
| Basal | 3–9 | Low glucose baseline | Basal secretion |
| G 16.7 | 9–60 (INS) / 9–63 (GCG) | High glucose (16.7 mM) | AUC, SI or II |
| G 16.7 phase 1 | 9–24 | First phase of high glucose (INS only) | AUC |
| G 16.7 phase 2 | 24–60 | Second phase of high glucose (INS only) | AUC |
| G 16.7+IMBX | 63–90 (INS) / 69–90 (GCG) | High glucose + phosphodiesterase inhibitor | AUC, SI |
| G 1.7+Epi | 93–120 (INS) / 93–117 (GCG) | Low glucose + epinephrine | AUC, SI or II |
| KCl 20 | 120–150 (INS) / 120–144 (GCG) | KCl depolarization | AUC, SI |
Note: Stimulation windows (Section III) and trait windows (Section IV) differ by design. For example, high glucose is perfused during 12–39 min, but the G 16.7 trait window extends from 9–60 min (INS) or 9–63 min (GCG) to capture the full secretory response including early baseline and post-stimulus dynamics.
Trait calculation is performed by traits_for_all() in code/peak_function.py.
Output columns are prefixed by hormone and normalization (for example, INS-IEQ, GCG-content). Units depend on the normalization:
| Trait | INS-IEQ | GCG-IEQ | INS-content | GCG-content |
|---|---|---|---|---|
| Basal Secretion | ng/100 IEQ/min | pg/100 IEQ/min | % content/min | % content/min |
| AUC | ng/100 IEQ | pg/100 IEQ | % content | % content |
| SI / II | dimensionless | dimensionless | dimensionless | dimensionless |
AUC units follow from trapezoidal integration of a secretion rate over time: (rate unit) × min.
{prefix} Basal Secretioncorrected = secretion - baselinecorrected = baseline - secretionMinHeightRatio; MinPeakLength.{prefix} {Phase} AUCpeak maximum / baselinebaseline / valley minimum{prefix} {Phase} SI or {prefix} {Phase} IINA.