Islet dynamic perifusion data processing

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.


I. Assay overview

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).


II. Normalization standards

The same functional secretion traces are normalized by two methods:

1. IEQ normalization

  • Purpose: Compare secretion rates across donors with different islet amounts.
  • Definition: Secretion per 100 islet equivalents (IEQ).
  • Units:
    • INS: ng/100 IEQ/min
    • GCG: pg/100 IEQ/min

2. Content normalization

  • Purpose: Express secretion as fractional release relative to total hormone content.
  • Definition: Secretion as % content/min.
  • Units: % content/min for both INS and GCG.

III. Experimental protocol: stimulation windows

INS and GCG secretion is measured during the following stimulation windows:

StimulusTime (min)
5.6 mM Glu3–9
16.7 mM Glu12–39
5.6 mM Glu42–60
16.7 mM Glu + 100 µM IBMX63–69
5.6 mM Glu72–90
1.7 mM Glu + 1 µM Epinephrine/HCl93–99
5.6 mM Glu102–120
5.6 mM Glu + 20 mM KCl123–129
5.6 mM Glu132–150

IV. Trait definition windows

Traits are extracted from the time-series data. Approximate phase timeline and how it maps to trait names:

PhaseApprox. timeDescriptionTypical use in traits
Basal3–9Low glucose baselineBasal secretion
G 16.79–60 (INS) / 9–63 (GCG)High glucose (16.7 mM)AUC, SI or II
G 16.7 phase 19–24First phase of high glucose (INS only)AUC
G 16.7 phase 224–60Second phase of high glucose (INS only)AUC
G 16.7+IMBX63–90 (INS) / 69–90 (GCG)High glucose + phosphodiesterase inhibitorAUC, SI
G 1.7+Epi93–120 (INS) / 93–117 (GCG)Low glucose + epinephrineAUC, SI or II
KCl 20120–150 (INS) / 120–144 (GCG)KCl depolarizationAUC, 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.


V. Trait extraction

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:

TraitINS-IEQGCG-IEQINS-contentGCG-content
Basal Secretionng/100 IEQ/minpg/100 IEQ/min% content/min% content/min
AUCng/100 IEQpg/100 IEQ% content% content
SI / IIdimensionlessdimensionlessdimensionlessdimensionless

AUC units follow from trapezoidal integration of a secretion rate over time: (rate unit) × min.

1. Basal secretion

  • Purpose: Quantify unstimulated hormone release.
  • Inputs: Raw secretion trace; baseline window (for example, 3–9 min).
  • Method: Mean secretion over the baseline period (no baseline subtraction).
  • Output trait: {prefix} Basal Secretion
  • Units: Same as the raw secretion rate for that normalization (see table above).

2. Baseline correction within stimulus windows

  • Purpose: Remove pre-stimulus secretion before peak analysis.
  • Inputs: Phase window, baseline time specification.
  • Method:
    • Stimulation peaks: corrected = secretion - baseline
    • Inhibition peaks: corrected = baseline - secretion
  • Outputs: Baseline-corrected curve used for AUC/SI/II (same rate units as raw trace).

3. Peak detection and AUC

  • Purpose: Quantify integrated hormone response during each stimulus phase.
  • Inputs: Baseline-corrected curve; MinHeightRatio; MinPeakLength.
  • Method:
    1. Detect contiguous positive regions above threshold.
    2. Filter peaks by minimum height and length.
    3. Integrate each peak using the trapezoidal rule.
    4. Interpolate start/end at zero crossing when possible.
  • Output trait: {prefix} {Phase} AUC
  • Units: Integrated secretion over the phase window (rate unit × min; see table above).

4. Stimulation Index (SI) and Inhibition Index (II)

  • Purpose: Normalize peak magnitude relative to baseline.
  • Inputs: Baseline-corrected curve and baseline value.
  • Method:
    • SI (positive peaks): peak maximum / baseline
    • II (negative peaks): baseline / valley minimum
  • Output traits: {prefix} {Phase} SI or {prefix} {Phase} II
  • Units: Dimensionless (unitless ratio); identical for IEQ and content normalizations.
  • Missing or invalid values (for example, zero baseline, no detected peak) are stored as NA.
Data Library