Introduction
L'analyse de la stabilité est devenue récemment un sujet brûlant. Honnêtement, je ne sais pas pourquoi, mais le nombre d’e-mails que j’ai vu arriver dans ma boîte de réception est indéniable. Un fil conducteur autour des questions d’analyse de stabilité est la question de l’analyse de stabilité par lots aléatoires. Les questions tendent à aller dans le sens suivant : "Pouvons-nous étudier la stabilité (ou la durée de conservation) d'un produit dans JMP et prendre en compte l'effet de plusieurs lots sélectionnés au hasard dans l'étude ?"
La réponse courte est oui, nous pouvons, avec un peu d’aide des… mathématiques.
via GIPHY
Mais n’ayez crainte ! Les calculs en question peuvent paraître effrayants, mais ce n’est pas le cas. Et j’ai été gentil et j’en ai fait un complément pour vous aider. Donc, si vous le souhaitez, vous pouvez simplement passer à la fin où je vous montre le complément et continuer en sachant que les mathématiques que nous utilisons sont documentées ici. C'est une pensée heureuse, n'est-ce pas ?
Alors donnons un cookie à notre anxiété mathématique et allons-y au lit pendant que nous examinons comment résoudre ce problème très intéressant.
Pourquoi est-ce nécessaire ?
Commençons par réfléchir à ce que nous disons. L'analyse de la stabilité, ou analyse de la durée de conservation, constitue essentiellement une protection contre la tendance des molécules organiques (comme les médicaments ou les aliments) à se dégrader avec le temps. Il répond à la question : « Quel degré de dégradation puis-je accepter avant que le produit ne perde le niveau d’efficacité souhaité ou devienne invendable ? » (Remarque : je vais encadrer cela dans le contexte du développement pharmaceutique, mais les concepts s'appliquent à de nombreux domaines différents.) Le défi vient de l'idée que nous pensons généralement que nous devons aborder ce problème différemment dans les différentes phases d'un processus. développement du produit. (La vérité est un peu plus nuancée que cela, mais utilisons-la comme hypothèse de travail pour le moment.)
Lorsqu'un produit est nouveau, nous ne disposons peut-être pas de nombreux lots de matériaux. Nous devons donc prélever plusieurs échantillons du même lot et les suivre au fil du temps pour déterminer si l'estimation initiale de la stabilité d'un produit est valide. À mesure que nous passons d’un produit du développement à la production, nous avons davantage de possibilités d’échantillonner différents lots. C'est formidable, car il s'agit d'une image plus réaliste du comportement du matériau, mais cela introduit de la complexité sous la forme de variations d'un lot à l'autre ou d'un lot à l'autre. En conséquence, nous devons disposer de différentes méthodes pour gérer le problème à différentes phases du cycle de vie du produit.
Pour le premier cas, nous disposons d'un outil (résidant actuellement dans la plateforme de dégradation) qui suit les directives ICH ( lien ) pour une étude de stabilité d'un seul lot.
Dans le deuxième cas, cette variation d'un lot à l'autre signifie que nous devons utiliser un type spécial de modèle appelé modèle mixte dans JMP. Si cela vous fait peur, respirez profondément, tout ira bien. Les modèles mixtes sont probablement le type de modèle le plus intuitif (conceptuellement) que vous rencontrerez. Les calculs sont un peu délicats, mais conceptuellement, les humains sont programmés pour aborder le monde d'une manière proche des modèles mixtes.
Le modèle mixte pour la stabilité des lots
Commençons par un exemple simple : si nous avions 10 sacs de cookies provenant de la même installation de production, mais à des moments différents, nous nous attendrions à ce que les cookies aient des propriétés cohérentes dans une certaine marge de variation. C'est dans cette dernière partie qu'interviennent les modèles mixtes. Si nous ne nous souciions pas des causes de cette variation autour de la tendance générale, nous pourrions simplement les regrouper et nous attendre à ce que certains cookies soient un peu supérieurs à d'autres. Cependant, si nous voulions étudier ces sources de variation (par exemple, quel four a été utilisé, vendeurs d'ingrédients, etc.), nous pourrions les inclure dans le modèle en tant qu'effets fixes. Dans le cas des sacs de cookies eux-mêmes, nous ne nous soucions pas des 10 sacs spécifiques que nous avons tirés, mais nous voulons les utiliser pour estimer la variabilité de TOUS les sacs en production, nous utilisons donc un composant modèle pour cet effet aléatoire. .
Passons à un exemple biotechnologique. Si nous avons un matériau ou un médicament fabriqué par lots et que les stocks d'aliments pour ces lots présentent des variations, nous nous attendons à ce qu'il y ait de petites variations d'un lot à l'autre.
Dans les modèles traditionnels, nous regroupons cette variation dans le terme d’erreur du modèle (ϵ) :

Avec des modèles mixtes, nous essayons de comprendre les contributions de ces effets aléatoires pour mieux comprendre d'où provient la variabilité. Vous avez peut-être déjà vu ces idées car elles apparaissent dans des expériences conçues comme des facteurs aléatoires qui utilisent la méthode d'ajustement REML (vraisemblance maximale restreinte) ; Une définition incorrecte de la variabilité peut conduire à des tests statistiques inexacts et, par conséquent, à de mauvaises décisions commerciales.

Durée de conservation et modèles mixtes
Alors, qu’est-ce que tout cela a à voir avec le calcul de la durée de conservation ? Eh bien, pour déterminer une durée de conservation, nous collectons des données soit sur la dégradation de l'ingrédient actif dans un échantillon, soit sur l'augmentation des impuretés au fil du temps et les utilisons pour développer un modèle linéaire simple. (Remarque : il existe un autre ensemble de problèmes dans cet espace lorsque l'on examine des modèles non linéaires, mais nous n'y allons pas cette fois). Nous utilisons ensuite le modèle linéaire pour extrapoler lorsque le paramètre d'intérêt dépasse une limite de spécification prédéterminée, par exemple lorsque nous avons trop peu d'ingrédient actif ou trop d'impuretés.
Pour le cas d'un seul lot où nous surveillons un ingrédient actif, nous choisirions simplement l'échantillon le moins performant du lot et utiliserions l'intervalle de confiance le plus faible sur sa ligne d'ajustement pour définir la durée de conservation. Pour ceux qui ne connaissent pas les lignes directrices de l'ICH, le protocole comporte des contrôles statistiques supplémentaires concernant la similarité des échantillons dont je ne parle pas ici.
Pour le cas de plusieurs lots, nous allons faire quelque chose de similaire. Mais nous allons utiliser un modèle mixte pour suivre la variation entre les lots et travailler avec un modèle unique pour l'ensemble des données. Nous allons supposer que la variabilité d'un lot à l'autre est généralement normalement distribuée autour d'un comportement moyen. Si nous utilisons cette hypothèse, nous pouvons utiliser certains décalages pour accéder à l'équation dont nous avons besoin pour calculer la durée de conservation tout en tenant compte de la variation d'un lot à l'autre. Allons-y (ou si vous voulez sauter les calculs, vous pouvez simplement passer au-delà de ce qui suit – votre appel).
AVERTISSEMENT! ICI, IL Y A... MATH !!
Construire la ligne de décision
Nous allons construire la ligne de décision en exécutant d'abord un modèle mixte dans JMP Pro. Les modèles mixtes sont l'une des personnalités disponibles dans Fit Model (Analyser > Fit Model).

Une fois cet ensemble défini, la zone des effets du modèle changera pour avoir trois onglets. Nous ne nous préoccupons que des deux premiers. Nous allons commencer la configuration en ajoutant la variable qui nous intéresse au champ Y. Ensuite, nous ajouterons la variable temporelle à l'onglet Effets fixes, tout comme dans les modèles traditionnels que vous avez probablement déjà construits.

Enfin, nous allons accéder à l'onglet Effets aléatoires et ajouter la variable de lot ou de lot aux effets aléatoires. Ce faisant, nous éliminons cette variabilité d'un lot à l'autre en introduisant une interception aléatoire. Nous allons également considérer la possibilité que les lots puissent se dégrader à des rythmes différents au fil du temps (c'est-à-dire avoir des pentes différentes pour la mesure du temps), nous autoriserons donc des pentes aléatoires. Pour tenir compte de cela, nous allons sélectionner les variables de temps et de lot dans la liste des colonnes, puis cliquer sur Croix dans l'onglet Effets aléatoires. La dernière chose que nous voulons faire est de définir le niveau alpha du modèle, qui est défini dans le menu du triangle rouge. Si vous vouliez un centile de 75, vous définiriez un alpha de 0,25. Lorsque vous avez terminé (si vous suivez), cela devrait ressembler à ceci :

Ensuite, nous cliquons sur Exécuter. La dernière chose que nous devrons faire avant de passer en mode « plug-and-chug » est d'aller dans le menu du triangle rouge et de sélectionner LRT > Matrices de covariance et de corrélation > Covariances pour tous les paramètres.
La bonne nouvelle est que nous en avons maintenant terminé avec les « calculs lourds » et que toutes les valeurs dont nous avons besoin se trouvent dans le rapport du modèle mixte. Nous pouvons les extraire pour créer la ligne de décision. La ligne de décision est simplement un intervalle de confiance pour la ligne n-quantile du modèle moyen (c'est-à-dire la ligne du 75 centile basée sur le niveau alpha défini dans la boîte de dialogue de configuration du modèle). Nous commençons donc par le modèle moyen à partir de l'ajustement :

Les estimations β se trouvent dans la colonne Estimations ici dans le rapport :

Nous modifions ensuite cette ligne avec un décalage pour tenir compte de la variabilité d'un lot à l'autre représentée par les effets aléatoires, ainsi que du quantile sur lequel nous voulons baser la durée de conservation. Nous allons procéder en deux étapes afin que vous puissiez voir d'où tout vient :
Tout d’abord, prenons la ligne moyenne et développons le terme d’erreur (ϵ) :

Notez que tout ce que nous avons fait, c'est extraire quelques termes (
) sur ϵ dans cette toute première équation. Le premier nouveau terme (
) est l'ordonnée à l'origine aléatoire et le deuxième terme (
) représente les pentes aléatoires. Une petite note sur la notation que j'utilise ici : les effets fixes (les choses que nous pouvons contrôler) utiliseront des lettres grecques (par exemple,
) et les effets aléatoires utiliseront des lettres latines (par exemple,
).
L'étape 2 consiste à compenser la ligne moyenne par les contributions de chaque source de variabilité (la
termes dans l'équation ci-dessous) et mettez-le à l'échelle en fonction du score z pour le quantile souhaité (
). Cela rend l'équation un peu plus complexe, mais il ne s'agit que d'estimations que vous recherchez dans le rapport (les emplacements sont visibles dans la capture d'écran ci-dessous) ou que JMP peut calculer pour vous :

Nous trouvons ces termes sigma au carré (
) dans la colonne Estimation de la section Composantes de l'écart du rapport :

Enfin, nous devons développer un intervalle de confiance sur cette droite. Cela a l'air un peu poilu lorsqu'il est présenté en notation :

termes de variance :

via GIPHY
Mais toutes ces dérivées partielles se décomposent soit en constantes, soit en termes linéaires simples. Chaque sigma (
) ou psi (
) est simplement une variance ou une covariance trouvée dans la matrice de covariance que nous avons activée dans le rapport. En substituant et en consolidant les termes, les termes de variance ressemblent à ceci :

Donc, quand vous additionnez tout cela et que vous le remettez dans
, vous obtenez ce qui équivaut essentiellement à un simple polynôme avec un nombre désagréable de constantes.
C'est irritant si vous voulez essayer de faire cela à la main, mais pratique si vous voulez, par exemple, coder l'analyse. Tout cela peut être fait par morceaux et simplement additionné à la fin.
Tout construire dans JMP
Si vous avez fait les calculs, bon retour !
La bonne nouvelle, comme je l'ai dit à plusieurs reprises, est que tous les chiffres nécessaires pour prendre la décision pour une étude donnée sont disponibles dans les rapports de modèles mixtes JMP. Il s'agit simplement de les retirer, de les brancher et de regarder où la ligne de décision croise la limite d'intérêt des spécifications. Vous pouvez le faire à la main, mais comme je l'ai dit au début, il existe maintenant un complément pour cela. Vous pouvez le trouver ici : Durée de conservation des lots aléatoires / Analyse de stabilité . J'ai laissé le code non crypté afin que vous puissiez fouiller et voir ce que je fais là-dedans.
