pymixef.backends.mmrm module

Dense repeated-measures Gaussian REML (MMRM) reference backend.

Expected fields in addition to the common backend contract are subject (or subjects/group), visit (or visits), and a covariance structure in covariance/covariance_structure/residual. Supported structures are homogeneous, diagonal, unstructured, compound symmetry, AR(1), heterogeneous AR(1), Toeplitz, heterogeneous Toeplitz, first-order ante-dependence, and spatial power. Missing visits are handled by selecting the observed submatrix of the shared visit covariance.

Satterthwaite denominator degrees of freedom use a finite-difference delta method for contrast variance and the REML covariance-parameter Hessian. kenward-roger is intentionally not claimed. An explicitly requested kenward-roger-approximate option uses a second-order delta adjustment and is labelled KR-inspired, not exact KR.

class pymixef.backends.mmrm.MMRMBackend[source]

Bases: object

Dense subject-block MMRM REML engine.

name = 'mmrm'
fit(data, *, covariance=None, method='REML', df_method='satterthwaite', confidence_level=0.95, maxiter=1_000, tolerance=1e-8, compute_hessian=True, **options)[source]
Parameters:
  • data (Any)

  • covariance (Any)

  • method (str)

  • df_method (str)

  • confidence_level (float)

  • maxiter (int)

  • tolerance (float)

  • compute_hessian (bool)

  • options (Any)

Return type:

dict[str, Any]

pymixef.backends.mmrm.contrasts(beta, covariance, matrix, *, names=None, degrees_of_freedom=np.inf, confidence_level=0.95, method='Wald')

Build a tidy table for linear EMM/contrast estimates.

Parameters:
  • beta (ArrayLike)

  • covariance (ArrayLike)

  • matrix (ArrayLike)

  • names (Sequence[str] | None)

  • degrees_of_freedom (ArrayLike | float)

  • confidence_level (float)

  • method (str)

Return type:

dict[str, list[Any]]

pymixef.backends.mmrm.estimated_marginal_means(beta, covariance, matrix, *, names=None, degrees_of_freedom=np.inf, confidence_level=0.95, method='Wald')

Build a tidy table for linear EMM/contrast estimates.

Parameters:
  • beta (ArrayLike)

  • covariance (ArrayLike)

  • matrix (ArrayLike)

  • names (Sequence[str] | None)

  • degrees_of_freedom (ArrayLike | float)

  • confidence_level (float)

  • method (str)

Return type:

dict[str, list[Any]]

pymixef.backends.mmrm.fit_mmrm(data, **options)[source]

Fit a Gaussian MMRM with dense subject covariance blocks.

Parameters:
  • data (Any)

  • options (Any)

Return type:

dict[str, Any]

pymixef.backends.mmrm.linear_inference(beta, covariance, matrix, *, names=None, degrees_of_freedom=np.inf, confidence_level=0.95, method='Wald')[source]

Build a tidy table for linear EMM/contrast estimates.

Parameters:
  • beta (ArrayLike)

  • covariance (ArrayLike)

  • matrix (ArrayLike)

  • names (Sequence[str] | None)

  • degrees_of_freedom (ArrayLike | float)

  • confidence_level (float)

  • method (str)

Return type:

dict[str, list[Any]]