longmi

longmi creates multiple plausible versions of missing repeated outcomes, fits the same analysis to each version, and combines the estimates and uncertainty using Rubin's rules. It handles one incomplete longitudinal outcome and makes the assumptions behind every result explicit — as part of the result object, not only in a paper.

Incomplete longitudinal data
 → fit an imputation model
 → generate M completed datasets
 → fit the same analysis M times
 → pool estimates and uncertainty
 → report the result and its validity conditions

Where to start

Applied researcher — "How do I analyze my incomplete longitudinal outcome?" Start with the quickstart, then preparing data, choosing an imputer, and understanding the output. When you write it up, use the reporting guide.

Statistician — "Under exactly what assumptions is this valid?" Start with why impute the response?, then the mathematical foundations and validity conditions (four cited propositions), assumptions A1–A8, and the estimating-equation qualification. The algorithm pages state exactly what is computed, approximations included.

Contributor — "How do I implement or validate another backend?" Read the posterior-predictive MI contract and the two backend pages as worked precedents; validation obligations (unit invariants, simulation bias/coverage, cross-language parity) are in project status.

The package's stance

longmi implements established missing-data theory — Rubin (1976, 1987), Barnard–Rubin (1999), Meng (1994), Wang–Robins (1998) — it does not introduce a new proof of multiple imputation. Its contribution is an independent, tested implementation whose validity conditions are declared in software: every pooled result can render a validity_report() distinguishing what was verified by construction from what the analyst declared.

Feature maturity is tracked in one place: project status.