bio-clinical-biostatistics-missing-data
Implements missing-data sensitivity analyses for confirmatory clinical trials including MMRM under MAR (with Kenward-Roger correction), reference-based multiple imputation (J2R, CR, CIR, LMCF per Carpenter-Roger 2013), Permutt delta-adjustment / tipping-point analysis, pattern-mixture identifying restrictions (CCMV, NCMV, ACMV), and the Cro vs Bartlett variance debate. Use when handling missing primary or secondary endpoint data in regulatory submissions following NRC 2010 and ICH E9(R1).
npx skills add BioTender-max/awesome-bio-agent-skills --skill missing-data-sensitivity --agent claude-code
Same command for any agent — swap --agent for codex, cursor, copilot.
Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.
What it does
Implements missing-data sensitivity analyses for confirmatory clinical trials, covering MMRM under MAR with Kenward-Roger correction, reference-based multiple imputation (J2R, CR, CIR, LMCF per Carpenter-Roger 2013), Permutt delta-adjustment / tipping-point analysis, pattern-mixture identifying restrictions (CCMV, NCMV, ACMV), and the Cro vs Bartlett variance debate. Use when handling missing primary or secondary endpoint data in regulatory submissions following NRC 2010 and ICH E9(R1).
How it works
Describes multiple concrete analytical approaches and their implementation details:
- MMRM under MAR with Kenward-Roger correction using Rmmrm, including a pre-specified convergence fallback hierarchy (UN+KR, UN+Satterthwaite, Toeplitz variants, AR(1), CS).
- Reference-based MI via rbmi: J2R, CR, CIR, LMCF are implemented through an imputation-and-analysis pipeline, with Bayesian MI, REML-based approximations, conditional mean imputation with jackknife, or bootstrap variants, followed by Rubin pooling.
- Permutt delta-adjustment: perform delta-templates per arm and per-visit, looping over a delta grid, pooling results to identify tipping points.
- Pattern-mixture approaches (CCMV, NCMV, ACMV): use pattern-based restrictions to identify missing-value patterns and apply MI under those restrictions.
- Variance debate (Cro vs Bartlett): guidance to report both Rubin-based and frequentist (jackknife/bootstrap) variances for J2R/CR/CIR, outlining regulatory interpretations.
- Decision-tree guidance and scenario-based recommendations for various endpoints and missingness contexts.
When to use it
Use for missing primary or secondary endpoint data in regulatory submissions, particularly when the analysis must pre-specify missing-data assumptions and include sensitivity analyses as required by NRC 2010 and ICH E9(R1).
What it can touch
Tools: claude-code. The skill documents usage of R packages mmrm, rbmi, and relevant methods (mmrm, Rubin pooling, jackknife/bootstrap) as explicit components of the workflows.
Caveats
Discusses limitations and debates: variance interpretation (Rubin vs frequentist) in J2R/CR/CIR analyses; identifiability issues in pattern-mixture and selection models; caution that MNAR mechanisms cannot be distinguished from observed data; pre-specification in SAP is essential.
## Version Compatibility Reference examples tested with: R `mmrm` 0.3+ (Roche/openpharma), R `rbmi` 1.5+ (Roche/Bayer via insightsengineering), R `mice` 3.16+, R `mitools` 2.4+, Python `sklearn` 1.4+, `statsmodels` 0.14+. Before using code patterns, verify installed versions match. If versions differ: - R: `packageVersion('<pkg>')` then `?function_name` - Python: `pip show <package>` then `help(module.function)` If code throws ImportError, AttributeError, or TypeError, introspect the installed package and adapt the example to match the actual API rather than retrying. # Missing Data Sensitivity for Confirmatory Trials **"Handle missing data in a confirmatory clinical trial"** -> Pre-specify the missing-data assumption per ICH E9(R1); execute the primary analysis under the chosen assumption (typically MAR via MMRM or MI); run clinically-articulable MNAR sensitivity analyses (reference-based MI per Carpenter-Roger 2013); report the tipping delta that would overturn the conclusion (Permutt 2016). ## The Foundation -- NRC 2010 and ICH E9(R1) **The U.S. National Research Council Panel** ("The Prevention and Treatment of Missing Data in Clinical Trials," 2010; chaired by Roderick Little;
- Version Compatibility
- The Foundation -- NRC 2010 and ICH E9(R1)
- Missing-Data Mechanisms
- Algorithmic Taxonomy
- Decision Tree by Scenario
- MMRM Under MAR -- The FDA-Preferred Continuous Analysis
- Reference-Based Multiple Imputation -- The rbmi Framework
- Inference engine choice (rbmi)
- The Variance Debate -- Cro vs Bartlett
- Permutt Tipping-Point Analysis
- Pattern-Mixture and Selection Models
- Pattern-mixture identifying restrictions (Little 1993, Molenberghs et al 1998)
- Selection model (Diggle-Kenward 1994)
- Multiple Imputation in Python -- The sklearn Caveats
What does the bio-clinical-biostatistics-missing-data skill do?
Implements missing-data sensitivity analyses for confirmatory clinical trials including MMRM under MAR (with Kenward-Roger correction), reference-based multiple imputation (J2R, CR, CIR, LMCF per Carpenter-Roger 2013), Permutt delta-adjustment / tipping-point analysis, pattern-mixture identifying restrictions (CCMV, NCMV, ACMV), and the Cro vs Bartlett variance debate. Use when handling missing primary or secondary endpoint data in regulatory submissions following NRC 2010 and ICH E9(R1).
How do I install it?
Run `npx skills add BioTender-max/awesome-bio-agent-skills --skill missing-data-sensitivity --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.
Where does this skill come from?
From BioTender-max/awesome-bio-agent-skills, a repository with 135 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.
Is a popular skill a good skill?
Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.
