← Tous les chapitres Parcours et exercices

Chapitre 01

nlmixr2 — l'open source (R)

Racym Berrah, PharmD PMx Explain Relecture scientifique par l'auteur : ORCID

Estimer en R avec plusieurs familles d'estimateurs, le moteur rxode2 et l'écosystème R.

1 activités guidées

01 · Pourquoi ce chapitre

nlmixr2 est une suite open source de modélisation non linéaire à effets mixtes dans R. Elle propose notamment SAEM et FOCEI, utilise rxode2 pour les modèles dynamiques et s'intègre à l'écosystème R pour la préparation des données, les graphiques et la reproductibilité.

L'absence de licence commerciale facilite l'apprentissage, le prototypage et le partage. L'adéquation à une analyse dépend néanmoins du modèle, de la méthode d'estimation, des diagnostics, des versions et de l'environnement de calcul.

02 · Intuition

Tout se fait dans R : le modèle est une fonction R lisible, on appelle nlmixr2(...) avec la méthode voulue, et les résultats sont des objets R — directement exploitables avec ggplot2, xpose, ggPMX.

Un workflow peut rester dans un seul langage, de la donnée au graphique. Cela peut faciliter la traçabilité, à condition d'archiver le code, les données, les versions et les réglages.

03 · La formule décortiquée

Le modèle et l'estimation en R :

mod <- function() {
  ini({
    tcl <- log(0.13); tv <- log(8); tka <- log(1)
    eta.cl ~ 0.1; eta.v ~ 0.1
    prop.err <- 0.1
  })
  model({
    cl <- exp(tcl + eta.cl); v <- exp(tv + eta.v); ka <- exp(tka)
    d/dt(depot)  = -ka*depot
    d/dt(centr)  =  ka*depot - (cl/v)*centr
    cp = centr/v
    cp ~ prop(prop.err)
  })
}
fit <- nlmixr2(mod, data, est = "saem")   # ou est = "focei"

est = "saem" et "focei" ne sont que deux choix usuels. La documentation actuelle distingue aussi FO/FOI, FOCE/FOCEI/FOCEP, Laplace/AGQ, nlme, posthoc, puis des méthodes de recherche par importance sampling, non paramétriques ou variationnelles. Elles ont leurs propres implémentations, réglages, conventions et niveaux de maturité. Le moteur d'ODE est rxode2, réutilisable seul pour simuler.

Version vérifiée : nlmixr2 7.0.1, le 12 octobre 2026. La série 7 a modifié plusieurs valeurs par défaut de FOCEI et SAEM et introduit des moteurs expérimentaux. Un résultat reproductible doit donc archiver la version, est = et l'objet de contrôle complet.

04 · Exemple concret

Pour les workflows pris en charge par ces paquets, un étudiant ou une petite équipe peut estimer avec nlmixr2, simuler avec rxode2 et construire des diagnostics dans R sans licence commerciale. Certaines équipes prototypent dans cet environnement puis comparent dans un autre outil selon leur workflow ; la proximité des estimations doit se vérifier modèle par modèle, avec les mêmes données, hypothèses et méthodes de calcul de l'OFV.

Le code R explicite peut servir de support pédagogique et reproductible, sans dispenser d'expliquer les approximations ni de contrôler les résultats numériques.

05 · Piège fréquent

Gratuit ne veut pas dire sans rigueur.

06 · À retenir

  • nlmixr2 : une suite open source de modélisation non linéaire à effets mixtes dans R.
  • Modèle = fonction R ; plusieurs familles d'estimateurs, dont SAEM, FOCEI, Laplace/AGQ et des méthodes de recherche à contrôler indépendamment.
  • Moteur d'ODE rxode2 (aussi pour la simulation) ; écosystème R (xpose, ggPMX).
  • Utile pour apprendre, prototyper et partager selon le besoin ; documenter les versions et réglages ; diagnostiquer toujours.

Point de contrôle

Vérifiez votre compréhension

Q1. nlmixr2 se distingue surtout par...

Q2. nlmixr2 propose...

Q3. Le moteur d'ODE sous nlmixr2 est...

Exercices d'entraînement

Activités guidées

Cas en plusieurs étapes combinant calcul, interprétation et raisonnement.

Activité guidée · 10 min · Niveau 1

Préparer un ajustement nlmixr2

Calcul · InterprétationÀ commencer

Citer cette page

Berrah R. nlmixr2 — l'open source (R). PMx Explain, 2026. https://rberrah.github.io/pharmacometrie/chapitres/tools-nlmixr2/

@misc{berrah2026toolsnlmixr2,
  author       = {Berrah, Racym},
  title        = {{nlmixr2 — l'open source (R)}},
  howpublished = {PMx Explain},
  year         = {2026},
  url          = {https://rberrah.github.io/pharmacometrie/chapitres/tools-nlmixr2/},
  note         = {Texte actuel sous licence CC BY-NC-SA 4.0}
}
Contenu pédagogique uniquement. Pas de conseil médical. Pas d'ajustement posologique patient-spécifique.