Statistical Analysis Report — GLPI103-301
| Field | Value |
|---|---|
| Document ID | SAR-301 |
| Version | 1.0 |
| Status | Final (portfolio) |
| Study | GLPI103-301 — Phase 3, T2DM, GLPI-103 (IV / Oral) vs oral semaglutide |
| Companion to | SAP-301 (pre-specification), CSR-301 (clinical report), DEF-301 (ADRG/SDRG) |
| Standards | ICH E9 / E9(R1) (estimands), CDISC ADaM |
| Confidentiality | Confidential — portfolio use |
This report documents the executed statistical analyses for Study GLPI103-301, expanding on the headline numbers in CSR-301 with the full estimand-aligned, sensitivity, and supportive analyses. Every result is generated reproducibly by the analysis programs in
src/biostat/and persisted underoutputs/stats/; the report cites the producing program and output file for each.
Change History
| Version | Date | Author | Summary |
|---|---|---|---|
| 1.0 | 2026-06-30 | Biostatistics | Initial — consolidates estimand, missing-data, multiplicity, responder, subgroup, and time-to-event analyses |
1. Analysis Populations & Data
- FAS (Full Analysis Set) = all 900 randomized (IV 300 / Oral 301 / Sema 299); primary efficacy population.
- PPS (Per-Protocol Set) = 847 (53 major protocol deviations excluded); supportive.
- Safety Set = all dosed (900).
- Realistic trial complexity is present in the analysis data: 9.3% discontinuation with documented reasons, 26 subjects on rescue medication (an intercurrent event), monotone missing data under MAR/MNAR mechanisms, recurrent hypoglycaemia, 10 serious adverse events, and 2 deaths. This complexity is what makes the estimand, missing-data, and time-to-event analyses below substantive rather than illustrative.
2. Estimand Framework (ICH E9(R1))
The primary estimand for the HbA1c endpoint is defined by: population (FAS), variable (HbA1c CFB at Week 52), treatment condition (randomized arm), population-level summary (difference in LS means), and intercurrent-event (ICE) strategies. Two ICE strategies are analysed for rescue medication:
- Treatment-policy — all observed data are used regardless of rescue (the value "as observed").
- Hypothetical — the HbA1c value that would have been observed without rescue; post-rescue values are set to missing and recovered under MAR.
Program: src/biostat/mmrm_estimands.R → outputs/stats/estimand_results.csv. Model: MMRM via the mmrm package, CHG ~ TRT01A*VISIT + BASE + STRAT_HBA1C + STRAT_BMI with an unstructured covariance and Kenward-Roger degrees of freedom.
| Estimand | GLPI-103 IV − Sema | GLPI-103 Oral − Sema |
|---|---|---|
| Treatment-policy | −0.67 (95% CI −0.81, −0.53) | −0.38 (−0.52, −0.24) |
| Hypothetical (no rescue) | −0.69 | −0.40 |
Interpretation. The treatment difference is slightly larger under the hypothetical estimand. This is the expected direction: rescue medication (used more by under-controlled, predominantly comparator-arm subjects) improves the comparator's observed glucose under treatment-policy, attenuating the difference; removing post-rescue data recovers the unattenuated pharmacological effect. The two estimands agree closely, so the superiority conclusion does not depend on the ICE strategy chosen.
3. Primary Endpoint — ANCOVA (confirmatory)
Program: src/biostat/run_analysis.R → outputs/stats/ancova_results.csv. Model: CHG ~ TRT01A + BASE + STRAT_HBA1C + STRAT_BMI (Week 52, FAS completers).
| Arm | LS-mean CFB (%) | 95% CI |
|---|---|---|
| GLPI-103 IV | −2.57 | −2.67, −2.47 |
| GLPI-103 Oral | −2.23 | −2.33, −2.13 |
| Semaglutide Oral | −1.89 | −1.99, −1.79 |
Superiority vs semaglutide: IV −0.68% (95% CI −0.81, −0.55; p<0.001), Oral −0.34% (−0.49, −0.23; p<0.001).
4. Missing-Data Sensitivity Analyses
The 9.3% discontinuation makes missing-data robustness material. The MMRM (§2) is valid under MAR; departures are stress-tested with reference-based multiple imputation and a tipping-point analysis.
Program: src/biostat/missing_data_sensitivity.R (rbmi, approximate-Bayesian MI, 25 imputations, Rubin's rules) → outputs/stats/missing_data_results.csv.
| Method (IV − Sema) | Estimate | 95% CI |
|---|---|---|
| MAR multiple imputation | −0.67 | −0.79, −0.54 |
| Jump-to-reference (conservative) | −0.65 | −0.78, −0.53 |
| Copy-reference | −0.67 | −0.79, −0.54 |
Even jump-to-reference — which assumes a subject who discontinues GLPI-103 immediately reverts to the comparator's trajectory — barely attenuates the effect.
Tipping-point (MNAR). A delta penalty δ was added to all imputed active-arm values and the analysis re-run:
| δ (% HbA1c added to imputed IV values) | IV − Sema | p-value |
|---|---|---|
| 0.0 | −0.66 | 3×10⁻²³ |
| 0.8 | −0.56 | 6×10⁻¹⁶ |
| 1.6 | −0.45 | 2×10⁻⁹ |
| 2.0 | −0.40 | 6×10⁻⁷ |
The conclusion does not tip even at δ = +2.0% — a departure from MAR far larger than is clinically plausible. The primary result is robust.
5. Multiplicity — Fixed-Sequence Gatekeeping
Program: src/biostat/secondary_subgroup.py → outputs/stats/multiplicity_results.csv. The pre-specified 8-step hierarchy (SAP-301 §7.3), each step tested at α=0.05 only if all prior steps rejected:
| Step | Comparison · Endpoint | p | Decision |
|---|---|---|---|
| 1 | IV · HbA1c (primary) | 3×10⁻²² | REJECT |
| 2 | Oral · HbA1c | 9×10⁻⁸ | REJECT |
| 3 | IV · body weight | <10⁻⁹⁰ | REJECT |
| 4 | IV · HbA1c<7% responder | 0.004 | REJECT |
| 5 | IV · ≥10% weight-loss responder | <10⁻¹⁰ | REJECT |
| 6 | Oral · body weight | 10⁻³² | REJECT |
| 7 | Oral · HbA1c<7% responder | 0.014 | REJECT |
| 8 | Oral · ≥10% weight-loss responder | 10⁻¹³ | REJECT |
All eight hypotheses are rejected, so family-wise type-I error is strongly controlled at 0.05 across the entire key efficacy family.
6. Responder Analyses
Program: src/biostat/secondary_subgroup.py → outputs/stats/responder_results.csv. Responders use non-responder imputation (NRI) — a missing Week-52 value counts as a non-responder (the conservative FAS-denominator standard; the observed-completer rates appear descriptively in CSR-301 §11.5). Odds ratios from logistic regression and stratified Cochran-Mantel-Haenszel (strata = HbA1c × BMI).
| Endpoint | Arm | Responder % (NRI) | OR (logistic) | CMH p |
|---|---|---|---|---|
| HbA1c <7.0% | IV | 84.0 | 2.03 (1.25, 3.31) | 0.004 |
| HbA1c <7.0% | Oral | 82.3 | 1.83 (1.13, 2.97) | 0.014 |
| ≥10% weight loss | IV | 87.2 | 9.47 (5.86, 15.3) | <0.001 |
| ≥10% weight loss | Oral | 76.8 | 4.64 (3.06, 7.02) | <0.001 |
(Control: HbA1c<7.0% 72.9%; ≥10% weight loss 42.1%.) Both GLPI-103 arms had significantly higher responder odds on both endpoints; the weight-loss responder advantage is especially large.
7. Subgroup Analyses (primary effect, IV vs Sema)
Program: src/biostat/secondary_subgroup.py → outputs/stats/subgroup_results.csv (rendered as Figure 3, forest plot). Primary model fitted within each subgroup; treatment-by-subgroup interaction tested as supportive.
| Subgroup | Level | HbA1c diff (IV − Sema) | Interaction p |
|---|---|---|---|
| Overall | — | −0.68 | — |
| Baseline HbA1c | <8.5 / ≥8.5 | −0.69 / −0.67 | 0.57 |
| BMI | <30 / ≥30 | −0.67 / −0.69 | 0.99 |
| Age | <65 / ≥65 | −0.68 / −0.66 | 0.87 |
| Sex | F / M | −0.53 / −0.80 | 0.051 |
The treatment effect is consistent across all subgroups; no interaction is significant (sex is borderline and interpreted descriptively).
8. Time-to-Event Analyses
Program: src/biostat/survival_recurrent.R → outputs/stats/survival_results.csv, survival_km_medians.csv. Kaplan-Meier + stratified Cox proportional-hazards (strata = HbA1c × BMI).
| Endpoint | Arm | Hazard ratio vs Sema | p |
|---|---|---|---|
| Time to first HbA1c <7.0% | IV | 1.93 (1.57, 2.38) | 4×10⁻¹⁰ |
| Oral | 1.40 (1.14, 1.72) | 0.001 | |
| Time to rescue medication | IV | 0.167 (0.05, 0.57) | 0.004 |
| Oral | 0.356 (0.14, 0.90) | 0.030 |
GLPI-103 subjects reached the glycaemic target substantially faster (HR ~1.9 for IV) and were far less likely to require rescue (HR 0.17 for IV) than comparator subjects — both consistent with the superior glycaemic effect.
Competing-risk confirmation (robustness_results.csv): because the 2 deaths compete with reaching target, a cumulative-incidence/Fine-Gray analysis (rather than censoring deaths) was run; the subdistribution hazard ratio for time-to-target (IV 1.75, 95% CI 1.43–2.15; Oral 1.34) confirms the cause-specific Cox result with appropriate handling of the competing event.
Additional robustness (robustness_results.csv): the primary ANCOVA effect is insensitive to influential observations (31/573 flagged by Cook's distance >4/n; effect −0.680 → −0.900 on exclusion), and a site/centre random-effect sensitivity left the estimate unchanged (between-site variance ≈0).
9. Recurrent-Event Analysis — Hypoglycaemia
Program: src/biostat/survival_recurrent.R → outputs/stats/recurrent_results.csv. Overdispersion-robust quasi-Poisson rate model with a log-exposure offset (subject-years).
| Arm | Rate (events/subj-yr) | Rate ratio vs Sema | p |
|---|---|---|---|
| IV | 0.098 | 0.97 | 0.99 |
| Oral | 0.138 | 1.37 | 0.74 |
| Semaglutide | 0.101 | — | — |
Hypoglycaemia is infrequent and the rate is not significantly different between arms; events are sparse (73 events / 37 subjects), so confidence intervals are wide and the analysis is interpreted as supportive.
10. Hepatic Safety — eDISH & Hy's Law
Program: src/biostat/hepatic_safety.py → outputs/stats/hepatic_edish.csv, Figure 4. Per-subject peak ALT and peak total bilirubin (in ×ULN) are plotted on the standard eDISH log-log grid; the Hy's-law quadrant is ALT >3×ULN and total bilirubin >2×ULN.
Across 900 subjects, 1 had peak ALT >3×ULN and 0 met Hy's-law criteria. No drug-induced serious hepatotoxicity signal was identified — consistent with the GLP-1 class.
11. Bayesian Re-analysis of the Primary Endpoint
Program: src/biostat/bayesian_exposure.py → outputs/stats/bayesian_results.csv. A conjugate-normal Bayesian ANCOVA combines the primary estimate with a weakly-informative N(0, 1.0) prior on the HbA1c difference.
| Contrast | Posterior mean | 95% CrI | P(effect<0) | P(effect<−0.5%) |
|---|---|---|---|---|
| IV − Sema | −0.66 | −0.79, −0.54 | >0.999 | 0.995 |
| Oral − Sema | −0.38 | −0.50, −0.26 | >0.999 | 0.029 |
The posterior probability of superiority is essentially 1 for both arms; the IV arm additionally has a 99.5% posterior probability of exceeding a 0.5% margin.
12. Exposure–Response (Emax)
Program: src/biostat/bayesian_exposure.py → outputs/stats/exposure_response.csv. The Phase 2 dose-finding result (GLPI103-201) is characterised with an Emax model, supporting the Phase 3 dose selection.
Fitted: E0 = −0.2%, Emax = 2.4%, ED50 = 4.0 mg — i.e., roughly half-maximal HbA1c effect at ~4 mg, with the Phase 3 maintenance doses on the upper plateau.
13. Analysis Datasets & Traceability
Analyses draw on the ADaM datasets ADSL, ADLB, ADAE, ADVS, ADTTE (define.xml; ADRG DEF-301). Each result is mapped to its dataset, method, program, and output in the Analysis Results Metadata (ARM-301). The primary treatment effect is double-programmed: an independent Python ANCOVA reproduces the R emmeans contrasts within ±0.01 (qc_double_program.csv).
14. Overall Statistical Conclusions
- Superiority of both GLPI-103 formulations over oral semaglutide on HbA1c at Week 52 is established and confirmed under the confirmatory ANCOVA, the estimand-aligned MMRM (both ICE strategies), the fixed-sequence multiplicity procedure (all 8 steps reject), and a Bayesian re-analysis (posterior P(superiority) >0.999).
- The conclusion is robust to missing data — reference-based imputation (incl. conservative jump-to-reference) and a tipping-point analysis (no tip to δ = 2.0%).
- Secondary and supportive analyses are concordant: large weight-loss and responder advantages, consistent subgroup effects, faster time-to-target, lower rescue hazard, no excess hypoglycaemia, and no hepatotoxicity signal (eDISH).
- Reproducibility & QC. Every result is regenerated by
python build.py --stage biostat, reconciled to source, and the primary effect is independently double-programmed.
15. Limitations
The dataset is simulated, and effect sizes sit at the favourable end of the plausible range. The recurrent-event hypoglycaemia analysis is limited by sparse events (wide CIs). These do not affect the internal validity or reproducibility of the analyses reported.