<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
code{white-space: pre;}
Pius Dahinden, PhD, directeur des sciences analytiques, Tillotts Pharma
Abstrait
Depuis l'entrée en vigueur en 2014 de la nouvelle ligne directrice BPF de l'UE (EudraLex Volume 4) Chapitre 6 (Contrôle de la qualité), la réalisation d'une analyse des tendances sur les données de stabilité des produits pharmaceutiques est une exigence supplémentaire en matière de contrôle de la qualité analytique. Le groupe de travail sur le contrôle de la qualité analytique (AQCWG) de l'European Compliance Academy (ECA) a élaboré une procédure opérationnelle standard pour l'évaluation des résultats hors attentes (OOE) et hors tendance (OOT). Pour l'évaluation des données de stabilité, il est recommandé d'utiliser la procédure de carte de contrôle de régression (RCC) pour la comparaison des lots actuels avec les données des lots historiques. Cependant, les pentes et/ou les intersections estimées à partir des données de lot historiques elles-mêmes sont sujettes à incertitude. L'ECA AQCWG propose une méthode simplifiée de régression des coefficients aléatoires (RCR) qui en tient compte. Un script JMP nouvellement développé qui implémente la procédure RCC / RCR recommandée est présenté. Le script simplifie l'identification des points OOE / OOT dans les données de stabilité et fournit toutes les informations nécessaires dans la sortie, ainsi qu'un affichage graphique approprié.
Introduction
Les fabricants appliquent un contrôle statistique des processus (SPC) pour garantir la qualité des articles produits et pour éviter les pertes financières causées par des processus de production non maîtrisés. Le contrôle de processus signifie qu'un processus en cours d'exécution est régulièrement surveillé et que, si l'un des paramètres surveillés devait présenter une tendance anormale, des mesures sont prises pour ramener le processus sous contrôle. Le SPC est un outil qui permet aux fabricants de détecter rapidement les changements dans un processus, leur permettant d'enquêter sur les problèmes à l'origine des problèmes et de prendre des mesures correctives à un stade précoce. Un outil puissant pour la surveillance des processus est la méthode des cartes de contrôle qui a été popularisée par Shewhart [6]. La figure 1 montre la vue schématique d'une carte de contrôle typique.
Contrairement aux processus de production où il ne devrait pas y avoir de tendance, il existe de nombreux problèmes de gestion des données avec une tendance inhérente. Pour l'analyse de problèmes de gestion de données de ce type, la méthode conventionnelle de la carte de contrôle a été combinée avec l'analyse de régression, et cette approche a été appelée "carte de contrôle de régression" (RCC) par Mandel [4]. Comme le contrôle limite l'utilisation des intervalles de tolérance (TI) est raisonnable. Pour surveiller les données de stabilité des produits pharmaceutiques stockés dans les conditions de stockage recommandées (par exemple, 25 °C / 60 % HR), les RCC sont utilisés pour surveiller, par exemple, la dégradation de l'ingrédient pharmaceutique actif ou l'accumulation d'impuretés au fil du temps, pour soutenir la la date de péremption du produit, c'est-à-dire pour confirmer la stabilité du produit médicamenteux pendant toute la durée de conservation indiquée sur l'étiquette.
Figure_1Figure 1
Figure 1 Composition type d'une carte de contrôle
Une carte de contrôle montre généralement les valeursXXou une statistique de plusieurs valeurs (par exemple la moyenne) de la caractéristique de qualité d'un échantillon par rapport au nombre d'échantillons ou au temps. En général, le graphique contient une ligne centrale qui représente la valeur moyenneX¯\overset{\overline{}}{X}du processus sous contrôle. Une hypothèse fondamentale est que les données sont distribuées normalement. Deux lignes horizontales caractéristiques supplémentaires sont les limites de contrôle inférieure et supérieure (LCL et UCL, respectivement) à une distance de ± 3 écarts-types (SD) de la ligne médiane de sorte que, tant que le processus est sous contrôle, 99,7 % de la les points de données tomberont dans ces limites en raison d'une variation aléatoire appelée variation de cause commune. Les lignes à une distance de ± 2 SD de la ligne médiane sont appelées limites d'avertissement inférieure et supérieure (LWL et UWL, respectivement) tandis que les lignes à une distance de ± 1 SD de la ligne médiane n'ont pas de nom spécifique. A l'aide de ces lignes, une carte de contrôle peut être partitionnée en zones C à A. Les règles de détection d'une variation de cause spéciale qui caractérise un processus non maîtrisé utilisent les fréquences d'observations dans ces zones comme base de décision.
Procédures et résultats
Le RCC appliqué aux données de stabilité d'un produit pharmaceutique vise à répondre à deux questions : 1) Le lot actuel est-il hors attente (OOE) ou hors tendance (OOT) par rapport aux lots historiques (c'est-à-dire concernant le TI dérivé des données historiques) ? , et 2) le point de données le plus récemment mesuré du lot actuel est-il OOE en termes de lot actuel (c'est-à-dire concernant son intervalle de prédiction (PI)) ?
Un minimum de trois points de données du lot actuel est nécessaire pour l'évaluation d'une tendance en termes de question 1. Pour l'évaluation de la question 2, au moins quatre points de données sont nécessaires car le point de données le plus récemment mesuré ne doit pas être utilisé pour la construction de l'IP.
Étant donné qu'il est très probable que les lots historiques individuels varient en fonction de leurs interceptions et de leurs pentes, un modèle ordinaire des moindres carrés (pente commune - interception commune) pourrait ne pas être significatif. Pour cette raison, le groupe de travail sur le contrôle de la qualité analytique (AQCWG) de l'European Compliance Academy (ECA) recommande d'utiliser la méthode de "régression des coefficients aléatoires" (RCR) qui tient compte de la variabilité des interceptions et des pentes des lots individuels [7]. Un modèle RCR simplifié (modèle de Carter et Yang [1] modifié) contient deux paramètres inconnus, à savoir l'ordonnée à l'origineβ1\bêta_{1}et la penteβ2\bêta_{2}. Cette procédure est conforme aux recommandations de l'OMS [9] et de l'ICH [2].
Le terme OOT a été défini par l'Agence britannique de réglementation des médicaments et des produits de santé (MHRA) comme un résultat de test de stabilité qui ne suit pas la tendance attendue, soit par rapport à d'autres lots de stabilité, soit par rapport aux résultats précédents recueillis lors d'une étude de stabilité. [8]. Le terme OOS a été défini par la MHRA comme un résultat de test qui n'est pas conforme aux critères d'acceptation prédéterminés ou un résultat de test qui ne correspond pas aux critères d'acceptation établis qui ont été établis dans des recueils officiels et/ou par la documentation de l'entreprise [8 ]. Jusqu'à présent, il n'y a pas de définition formelle du terme OOE. L'ECA AQCWG propose (pour les tests qualitatifs et quantitatifs) de définir les résultats OOE comme des résultats anormaux, inattendus ou inhabituels qui ne peuvent pas être classés comme hors spécification (OOS) ou OOT [7].
Modèle RCR
Le modèle RCR simplifié peut être écrit comme
𝐲ij=𝛃1je+𝛃2je•𝐭ij+𝛆ij\mathbf{y}_{\text{ij}} = \mathbf{\beta}_{1i} + \mathbf{\beta}_{2i} \bullet \mathbf{t}_{\text{ij}} + \mathbf{\varepsilon}_{\text{ij}}
où𝐲je\mathbf{y}_{i}est unnje×1n_{i} \fois 1vecteur représentant lejeeje^{\text{th}}lot denjen_{je}mesures répétées (oùj=1,⋯,njej = 1,\ \cdots,\ n_{i}, avecnjen_{je}représentant le nombre total de mesures répétées du lotjeje) sur la variable réponse (par exemple dosage [%], somme des impuretés [%] ou dissolution [%]),𝛃1je\mathbf{\beta}_{1i}et𝛃2je\mathbf{\beta}_{2i}sont des vecteurs des intersections et des pentes spécifiques au lot, respectivement,𝐭je\mathbf{t}_{i}est lejeeje^{\text{th}}le vecteur temporel du lot (par exemple [Mois]), et𝛆je\mathbf{\varepsilon}_{i}est unnje×1n_{i} \fois 1vecteur denjen_{je}erreurs aléatoires. Une condition préalable à ce modèle RCR est une relation linéaire entre la réponse et la variable explicative. Si la relation ne doit pas être linéaire, une transformation appropriée doit être appliquée avant d'effectuer la modélisation RCR.
On suppose que chaqueεij\varepsilon_{\text{ij}}provient d'une population normale univariée de moyenne nulle, varianceσ2\sigma^{2}, et toutεij\varepsilon_{\text{ij}}sont indépendants les uns des autres (indépendance conditionnelle) et des coefficients du modèleβ1je\beta_{1i}etβ2je\beta_{2i}. Cette hypothèse est raisonnable car il est hautement improbable que la variabilité de la méthode d'analyse dépende du lot testé ou du moment où le test est exécuté. On suppose en outre que le vecteur du coefficient de régression de chaque lot,𝛃je\mathbf{\beta}_{i}, est indépendant de leurs vecteurs d'erreurs aléatoires et de tous les autres lots,𝛆k\mathbf{\varepsilon}_{k}.
La modélisation RCR comprend trois étapes.
Étape a) Ajustement d'un modèle de régression linéaire simple aux données de chaque lot
Les données associées au lotjejesont désignés par(tij,yij)\left( t_{\text{ij}},y_{\text{ij}} \right), oùyijy_{\text{ij}}représente lejeeje^{\text{th}}réponse mesurée du lot à un instant donnétjt_{j}, oùj=1,⋯,njej = 1,\ \cdots,\ n_{i}. Les points de temps individuelstjt_{j}peut différer entre les lots, de même que le nombre total de points dans le tempsnjen_{je}. La matrice de conception𝐗je\mathbf{X}_{i}pour le lotjejepeut s'écrire sous forme matricielle comme suit.
𝐗je=[1tje1⋮⋮1tjenje]\mathbf{X}_{i} = \begin{bmatrice} 1 & t_{i1} \\ \vdots & \vdots \\ 1 & t_{in_{i}} \\ \end{bmatrice}
Cette matrice est normalisée et désignée par𝐌je\mathbf{M}_{i}.
𝐌je=(𝐗je′𝐗je)−1\mathbf{M}_{i} = \left( \mathbf{X}_{i}^{'}\mathbf{X}_{i} \right)^{- 1}
Les estimations des intersectionsβje1\beta_{i1}, Les pentesβje2\beta_{i2}, "l'erreur quadratique moyenne" de la régressionMSEje=σjey^2\text{MSE}_{i} = \sigma_{i\hat{y}}^{2}, et les degrés de libertédfje=(nje−2)\text{df}_{i} = \left( n_{i} - 2 \right)associé àMSEje\text{MSE}_{i}sont obtenus en ajustant un modèle de régression linéaire simple aux données de chaque lot. Les intersections et les pentes(𝛃1,𝛃2)′\left( \mathbf{\beta}_{1},\mathbf{\beta}_{2} \right)^{'}sont estimés par
𝐛je=(𝐗je′𝐗je)−1𝐗je′𝐲je\mathbf{b}_{i} = \left( \mathbf{X}_{i}^{'}\mathbf{X}_{i} \right)^{- 1}\mathbf{X}_{ je}^{'}\mathbf{y}_{i}.
Étape b) Estimation de la matrice de variance-covariance d'erreur
L'estimation de la matrice de variance-covariance d'erreur des coefficients aléatoires commence par l'estimation de laMSE\text{MSE}de tous les lots, c'est-à-direMSEpiscine\text{MSE}_{\text{pool}}, comme suit.
MSEpiscine=σ^2=∑je=1ndfje•MSEje∑je=1Bdfje\text{MSE}_{\text{pool}} = {\hat{\sigma}}^{2} = \frac{\sum_{i = 1}^{n}{\text{df}_{i } \bullet \text{MSE}_{i}}}{\sum_{i = 1}^{B}\text{df}_{i}}
Le numérateur de cette équation peut être exprimé comme suit.
dfje•MSEje=ESSje=𝛆^je′𝛆^je=(𝐲je−𝐗je𝐛je)′(𝐲je−𝐗je𝐛je)\text{df}_{i} \bullet \text{MSE}_{i} = \text{SSE}_{i} = {\hat{\mathbf{\varepsilon}}}_{i}^{' }{\hat{\mathbf{\varepsilon}}}_{i} = \left( \mathbf{y}_{i} - \mathbf{X}_{i}\mathbf{b}_{i} \ droite)^{'}\left( \mathbf{y}_{i} - \mathbf{X}_{i}\mathbf{b}_{i} \right)
La matrice de variance-covariance de l'échantillon𝐒bb\mathbf{S}_{\text{bb}}des intersections et des pentes estimées(𝛃1,𝛃2)′\left( \mathbf{\beta}_{1},\mathbf{\beta}_{2} \right)^{'}est calculé comme suit.
𝐒bb=1n−1∑je=1n(𝐛je−β^ELU)(𝐛je−β^ELU)′\mathbf{S}_{\text{bb}} = \frac{1}{n - 1}\sum_{i = 1}^{n}\left( \mathbf{b}_{i} - {\ hat{\beta}}_{\text{ULS}} \right)\left( \mathbf{b}_{i} - {\hat{\beta}}_{\text{ULS}} \right)^ {'}
oùβ^ELU=1n∑je=1n𝐛je{\hat{\beta}}_{\text{ULS}} = \frac{1}{n}\sum_{i = 1}^{n}\mathbf{b}_{i}, c'est-à-dire le vecteur moyen des coefficients, c'est-à-dire les interceptions et les pentes (ULS signifie "Unweighted Least-Squares"). Maintenant, la matrice de variance-covariance𝚺^ββ{\hat{\mathbf{\Sigma}}}_{\text{ββ}}peut être estimé comme suit.
𝚺^ββ=𝐒bb−σ^2n•∑je=1n(𝐗je′𝐗je)−1=𝐒bb−σ^2•𝐌¯=[σβ12σβ1β2σβ1β2σβ22]{\hat{\mathbf{\Sigma}}}_{\text{ββ}} = \mathbf{S}_{\text{bb}} - \frac{{\hat{\sigma}}^{2} }{n} \bullet \sum_{i = 1}^{n}\left( \mathbf{X}_{i}^{'}\mathbf{X}_{i} \right)^{- 1} = \mathbf{S}_{\text{bb}} - {\hat{\sigma}}^{2} \bullet \overset{\overline{}}{\mathbf{M}} = \begin{bmatrix} \sigma_{\beta_{1}}^{2} & \sigma_{\beta_{1}\beta_{2}} \\ \sigma_{\beta_{1}\beta_{2}} & \sigma_{\beta_ {2}}^{2} \\ \end{bmatrice}
où𝐌¯=1n•∑je=1n𝐌je\overset{\overline{}}{\mathbf{M}} = \frac{1}{n} \bullet \sum_{i = 1}^{n}\mathbf{M}_{i}, c'est-à-dire la matrice variance-covariance moyenne du modèle. La variance d'erreurσ^2{\chapeau{\sigma}}^{2}estime la variance de la méthode analytique. La composante de variance à l'origineσβ12\sigma_{\beta_{1}}^{2}représente la variance intra-lot de la réponse observée à la sortie du produit due uniquement au processus de fabrication, c'est-à-dire en excluant la variance qui est due à la méthode analytique. La composante de variance de penteσβ22\sigma_{\beta_{2}}^{2}représente la variance inter-lots des taux de dégradation.
Puisque la matrice de variance-covariance𝚺^ββ{\hat{\mathbf{\Sigma}}}_{\text{ββ}}est estimée en calculant la différence de deux matrices, le résultat peut ne pas être défini positif, c'est-à-dire que l'ordonnée à l'origine et/ou la ou les composantes de la variance de la pente peuvent être négatives. Une solution possible consiste à remplacer la ou les valeurs négatives par 0. Il s'agit d'une approche simple de premiers secours pour les estimations de variance négatives et équivaut à convertir un effet aléatoire en un effet fixe. Dans le cas où les deux variances sont nulles, le modèle RCR correspond au modèle des moindres carrés ordinaires (OLS).
Étape c) Estimation du vecteur moyen des coefficients par un estimateur des moindres carrés pondérés (WLS)
L'estimation du vecteur moyen du coefficient commence par le calcul de l'estimation de𝐖je\mathbf{W}_{i},
𝐖je=(𝚺^ββ+σ^2•𝐌je)−1\mathbf{W}_{i} = \left( {\hat{\mathbf{\Sigma}}}_{\text{ββ}} + {\hat{\sigma}}^{2} \bullet \mathbf {M}_{i} \right)^{- 1}
qui correspond à l'inverse de la variance de l'estimation du paramètre de régression pourjeeje^{\text{th}}grouper. Sur la base de cette équation, le2×je2 \ fois jematrice dimensionnelle des estimations des coefficients d'ordonnée à l'origine et de pente, c'est-à-dire l'estimation des moindres carrés pondérés, est maintenant obtenue par l'équation suivante :
𝛃^WLS=(∑je=1n𝐖je)−1(∑je=1n𝐖je𝐛je)=𝛀(∑je=1n𝐖je𝐛je){\hat{\mathbf{\beta}}}_{\text{WLS}} = \left( \sum_{i = 1}^{n}\mathbf{W}_{i} \right)^{- 1}\left( \sum_{i = 1}^{n}\mathbf{W}_{i}\mathbf{b}_{i} \right) = \mathbf{\Omega}\left( \sum_{ je = 1}^{n}\mathbf{W}_{i}\mathbf{b}_{i} \right)
où𝛀\mathbf{\Oméga}est une estimation de la variance de l'estimateur des moindres carrés pondérés. La moyenne des estimations d'interception représente la réponse à la libération du produit moyennée sur le processus de fabrication, et la moyenne des estimations de pente représente la pente commune.
Intervalle de tolérance (TI) pour le modèle RCR
Les coefficients du modèle RCRβ1\bêta_{1}etβ2\bêta_{2}décrire la tendance générale, c'est-à-dire la tendance commune des lots historiques. Le TI pour le modèle RCR peut être calculé à l'aide de l'estimationy^j{\hat{y}}_{j}pour la droite de régression et son erreur typeσy^,RCR\sigma_{\hat{y},RCR}selon la méthode proposée par Scholz et Vangel [5] comme suit. Leur méthode utilise le concept de taille d'échantillon efficace.
y^j±k•σy^,RCR{\hat{y}}_{j} \pm k \bullet \sigma_{\hat{y},\text{RCR}}
Le terme d'erreurσy^,RCR\sigma_{\hat{y},RCR}est calculé par
σy^,RCR=D(𝐭(𝚺^ββ+1n𝛀)𝐭′+σ^2)\sigma_{\hat{y}, RCR} = D\left( \sqrt{\mathbf{t}\left( {\hat{\mathbf{\Sigma}}}_{\text{ββ}} + \frac {1}{n}\mathbf{\Omega} \right)\mathbf{t}^{\mathbf{'}}\mathbf{+}{\hat{\sigma}}^{2}} \right)
où𝐭=[1t1⋮⋮1tk],kϵN\mathbf{t} = \begin{bmatrice} 1 & t_{1} \\ \vdots & \vdots \\ 1 & t_{k} \\ \end{bmatrice},\ k\ \epsilon\mathbb{\text {\N}}, etDDest la diagonale de l'argument. Le facteurkkest donné par
k=n−1n•1n*−1•tn*−1,zp•n*,γk = \sqrt{\frac{n - 1}{n}} \bullet \frac{1}{\sqrt{n^{*} - 1}} \bullet t_{n^{*} - 1,\ z_ {p} \bullet \sqrt{n^{*}},\gamma}
où le facteurtn*−1,zp•n*,γt_{n^{*} - 1,z_{p} \bullet \sqrt{n^{*}},\gamma}est leγ\gammaquantile de la t diffusion avecn*−1n^{*} - 1degrés de liberté et le paramètre de non-centralitézp•n*z_{p} \bullet \sqrt{n^{*}}, oùzpz_{p}est leppquantile de la distribution normale standard. Le paramètren*n^{*}est la taille effective de l'échantillon donnée par
n*=[σb2σb2+σe2•∑je=1nb(njen)2+1n•σe2σb2+σe2]−1=[ρ•1F+1+(1−ρ)•1n]−1{n^{*} = \left\lbrack \frac{\sigma_{b}^{2}}{\sigma_{b}^{2} + \sigma_{e}^{2}} \bullet \sum_{ i = 1}^{n_{b}}\left( \frac{n_{i}}{n} \right)^{2} + \frac{1}{n} \bullet \frac{\sigma_{e }^{2}}{\sigma_{b}^{2} + \sigma_{e}^{2}} \right\rbrack}^{- 1} = \left\lbrack \rho \bullet \frac{1 }{f + 1} + \left( 1 - \rho \right) \bullet \frac{1}{n} \right\rbrack^{- 1}
où le paramètreFFet le rapport de varianceρ\rhôsont définis par
| F=1∑je=1nb(njen)2−1f = \frac{1}{\sum_{i = 1}^{n_{b}}\left( \frac{n_{i}}{n} \right)^{2}} - 1 |
ρ=σb2σb2+σe2\rho = \frac{\sigma_{b}^{2}}{\sigma_{b}^{2} + \sigma_{e}^{2}} |
oùσb2\sigma_{b}^{2}est la variance inter-lots,σe2\sigma_{e}^{2}est la variance intra-lot (ou variance de la méthode),njen_{je}est le nombre de mesures par lotjeje, c'est à direje=1,⋯,nbje = 1,\ \cdots,\ n_{b},nbn_{b}est le nombre de lots historiques, etnnest le nombre total d'échantillons, c'est-à-diren=∑je=1nbnjen = \sum_{i = 1}^{n_{b}}n_{i}.
Le TI couvrep(100%)p\gauche( 100\% \droite)de la population avec une probabilité deγ(100%)\gamma\left( 100\% \right). Le concept de taille d'échantillon effective tient compte du fait que les données intra-lot sont plus corrélées que les données inter-lots, ce qui diminue la quantité d'informations indépendantes. Pour cette raison, ce qui suit est toujours vrai :n*≤nn^{*} \leq n. Le cas idéaln*=nn^{*} = nest réalisé si les données intra-lot sont totalement non corrélées.
Implémentation de RCC / RCR dans JMP
Le script JSL implémentant la procédure RCC/RCR est structuré en plusieurs parties.
Tout d'abord, les noms des lots de référence et de test et les différents noms de variables pour la réponse, le temps, les lots et la condition de stockage doivent être définis.
Le modèle RCR est construit (Carter et Yang simplifiés [1]) comme indiqué ci-dessus.
Le TI du modèle RCR est construit selon la méthode proposée par Scholz et Vangel [5].
Une fenêtre de rapport est générée résumant les paramètres calculés sous forme de tableau et de graphique.
Exemple
Pour l'évaluation de la fonctionnalité du script, divers ensembles de données ont été générés pour neuf lots historiques et un lot actuel. L'extrait de code suivant exécute l'étape un ) de l'ajustement du modèle RCR, c'est-à-dire les interceptions (a,𝛃1\mathbf{\beta}_{1}), pentes (b,𝛃2\mathbf{\beta}_{2}), (racine) erreurs quadratiques moyennes ((RMSE ) MSE,MSEje\text{MSE}_{i}), degrés de liberté (df,dfje\text{df}_{i}), et nombre d'observations (n,njen_{je}) de lajejeles lots historiques sont collectés et stockés dans des vecteurs de longueurnbn_{b}.
For( i = 1, i <= n.refBatches, i++,
fm = Fit Model(
Y( :Eval( responseVariable ) ),
Effects( :Month ),
Personality( "Standard Least Squares" ),
Emphasis( "Minimal Report" ),
Where( :Batch == refBatches[i] ),
Invisible
);
fit = fm << Run;
fitr = fit << Report;
a.i[i, 1] = fitr["Parameter Estimates"][Number Col Box( 1 )] << Get( 1 );
b.i[i, 1] = fitr["Parameter Estimates"][Number Col Box( 1 )] << Get( 2 );
RMSE.i[i, 1] = fitr["Summary of Fit"][Number Col Box( 1 )] << Get( 3 );
df.i[i, 1] = fitr["Analysis of Variance"][Number Col Box( 1 )] << Get( 2 );
n.i[i, 1] = fitr["Summary of Fit"][Number Col Box( 1 )] << Get( 5 );
);
For( i = 1, i <= n.refBatches, i++,
MSE.i[i] = RMSE.i[i] ^ 2
);
Marcher b ) commence par estimer la MSE regroupée (MSE.pool,MSEpiscine\text{MSE}_{\text{pool}}). Par la suite, la matrice variance-covariance moyenne du modèle (M.bar,𝐌¯\overset{\overline{}}{\mathbf{M}}) est estimée, qui est ensuite combinée avec la matrice de variance-covariance de l'échantillon (S,𝐒bb\mathbf{S}_{\text{bb}}) pour obtenir la matrice variance-covariance (Sigma.hat,𝚺^ββ{\hat{\mathbf{\Sigma}}}_{\text{ββ}}).
ab.i = a.i || b.i; // Matrix of the intercept and slope vectors
S = Covariance( ab.i ); // Sample variance-covariance matrix of the intercepts and slopes
MSE.pool = Sum( E Mult( df.i, MSE.i ) ) / Sum( df.i ); // Pooled MSE
RMSE.pool = Sqrt( MSE.pool );
M.i = J( 2, 2, 0 );
For( i = 1, i <= n.refBatches, i++,
dat << Select All Rows << Invert Row Selection;
dat << Select Where( :Batch == refBatches[i] );
x = dat << Get As Matrix( {"Month"} );
x.length = N Row( x ); // Number of observations
colReprIntcpt = J( x.length, 1, 1 ); // Column of 1 representing the intercept
x = colReprIntcpt || x; // Design matrix of the OLS model
M.i = M.i + Inverse( x` * x );
);
M.bar = M.i / n.refBatches; // Mean model variance-covariance matrix
Sigma.hat = S - MSE.pool * M.bar;
Sigma.hat[Loc( Diag( Sigma.hat ) < 0 )] = 0; // Replace negative values on the diagonal of Sigma.hat by 0.
A l'étape c ) les coefficients du modèle RCR ab.hat (𝛃^WLS{\hat{\mathbf{\beta}}}_{\text{WLS}}) sont estimés à l'aide de l'extrait de code suivant.
M.i = J( 2, 2, 0 );
W.i = J( 2, 2, 0 );
For( i = 1, i <= n.refBatches, i++,
dat << Select All Rows << Invert Row Selection;
dat << Select Where( :Batch == refBatches[i] );
x = dat << Get As Matrix( {"Month"} );
colReprIntcpt = J( n.i[i, 1], 1, 1 ); // Column of 1 representing the intercepts
x = colReprIntcpt || x; // Design matrix of the linear model
M.i = M.i + Inverse( x` * x );
W.i = W.i + Inverse( Sigma.hat + MSE.pool * M.i );
);
Omega = Inverse( W.i );
ab.hat = Omega * (W.i * ab.i`);
ab.hat = ab.hat`;
ab.hat.bar = V Mean( ab.hat );
L'extrait de code suivant montre la construction du TI pour le modèle RCR selon Scholz und Vangel [5]. Pour la construction de l'intervalle, les estimations de coefficient d'interception et de pente moyennes stockées dans le vecteur ab.hat.bar sont utilisées.
utp = Associative Array( dat:Month ); // Unique time points
time.points = Matrix( utp << Get Keys ); // Vector with (new) time points for which the response is sought
n.new = N Row( time.points ); // Number of data points of the new data set
m.x = J( n.new, 1, 1 ) || time.points; // Design matrix
n = Sum( n.i ); // Total number of data points
df.th = n - 2; // Number of degrees of freedom if only fixed effects are allowed, i.e. if a "common slope, common intercept" model is appropriate.
df = df.th;
variance.ratio = Sigma.hat[1, 1] / (Sigma.hat[1, 1] + MSE.pool);
t.f = 1 / Sum( (df.i / n) ^ 2 ) - 1;
If( Sigma.hat[1, 1] == 0,
df.eff = df,
df.eff = 1 / (variance.ratio / (t.f + 1) + (1 - variance.ratio) / n)
);
// Calculation of the k.eff factor on the basis of the effective number of degrees of freedom.
k.eff = Sqrt( (n - 1) / n ) * 1 / Sqrt( df.eff - 1 ) * t Quantile(
gamma,
(df.eff - 1),
(Normal Quantile( (1 - alpha) ) * Sqrt( df.eff ))
);
t.quantil = t Quantile( (1 - alpha / 2), df.eff );
y.hat = ab.hat.bar[1] + ab.hat.bar[2] * time.points;
LTL = y.hat - k.eff * Vec Diag( Sqrt( m.x * (Sigma.hat + Omega / n.refBatches) * m.x` + MSE.pool ) );
UTL = y.hat + k.eff * Vec Diag( Sqrt( m.x * (Sigma.hat + Omega / n.refBatches) * m.x` + MSE.pool ) );
Dans la dernière partie du script, les résultats sont préparés pour être affichés dans une fenêtre de rapport. Un exemple de rapport est illustré à la figure 2.
Les résultats synthétisés par la fenêtre de rapport permettent de répondre aux questions posées au tout début du chapitre 3 comme suit : 1) puisque le point de données de 18 mois (c'est-à-dire la mesure la plus récente) du lot en cours se trouve en dehors du TI ajusté aux données de les lots historiques, il doit être conclu que le lot actuel est OOE / OOT, et 2) étant donné que le point de données de 18 mois du lot actuel tombe en dehors de l'IP du lot actuel, il doit être conclu que le lot actuel est également OOE / OOT en termes de lot actuel. La même conclusion devrait déjà être tirée à la station de temps précédente bien que le point de temps de 12 mois tombe dans le PI du lot actuel. Cependant, étant donné que ce point se situe en dehors du TI ajusté aux données des lots historiques, la conclusion générale à la station de temps de 12 mois doit avoir été qu'il s'agit d'un point OOE / OOT.
Comme mentionné au début du chapitre 3, il est très probable que les lots historiques individuels varient en fonction de leurs interceptions et de leurs pentes et que, pour cette raison, le modèle RCR surpasse le modèle des moindres carrés ordinaires. Cinq cas peuvent être différenciés : cas I : pas de variation d'ordonnée, pas de variation de pente ; cas II : variation d'interception, pas de variation de pente ; cas III : pas de variation d'ordonnée à l'origine, variation de pente ; cas IV : variation d'ordonnée à l'origine, variation de pente ; et cas V : non-linéarité. Les résultats sont résumés dans la figure 3 pour l'ensemble des cinq cas. Les graphiques de la figure 3 montrent que le modèle RCR représente mieux les données dans les cas où les interceptions et/ou les pentes varient et est très similaire à la méthode de base dans les cas où il n'y a pas de variabilité des interceptions et des pentes.
Figure_2Figure 2
Figure 2 Sortie du script implémentant la méthode RCC/RCR
La fenêtre est divisée en parties « Évaluation de l'historique du lot », « Évaluation du lot actuel (paramètres de modèle individuels) » et l'affichage graphique qui résume les données de lot historiques et actuelles. Les données des lots historiques sont représentées par des points bleus () et les données du lot actuel par des croix rouges (). Le TI ajusté aux données des lots historiques est représenté par la bande délimitée par les pointillés bleus et le PI ajusté aux données du lot courant (mais sans inclure l'observation la plus récente) par la bande délimitée par les pointillés rouges .
Figure 3 Comparaison des intervalles du modèle RCR et des intervalles du modèle de régression linéaire de base dans différentes situations
L'ajustement du modèle RCR est représenté par la ligne de régression continue bleue et les lignes pointillées bleues de l'intervalle de tolérance correspondant (confiance à 95 % et couverture à 95 %). L'ajustement de base du modèle est représenté par la ligne de régression violette en pointillés et la teinte violette de l'intervalle de prédiction correspondant (confiance à 95 %), c'est-à-dire les limites de confiance pour une valeur prédite individuelle. Les lignes pointillées grises dans le panneau Va représentent l'ajustement non linéaire calculé sur la base de la réponse au carré. Les six panels comparent les intervalles du modèle RCR et les intervalles du modèle de régression linéaire de base dans les situations suivantes : Panel I : cas « pas de variation à l'interception, pas de variation de pente » ; Panel II : cas "variation à l'origine, pas de variation de pente" ; Panel III : cas "pas de variation à l'origine, variation de pente" ; Panel IV : cas « variation à l'origine, variation de pente » ; Panel Va : cas "non-linéarité" ; Panel Vb : cas « non-linéarité » après transformation, c'est-à-dire mise au carré, de la variable réponse.
Conclusion
Le script JMP présenté dans ce manuscrit est un outil approprié et robuste pour évaluer les données de stabilité d'un lot actuel d'un produit pharmaceutique par rapport aux résultats OOE et OOT. Une condition préalable est la disponibilité des données de stabilité historiques d'au moins trois lots avec au moins quatre points dans le temps de chacun de ces lots.
Bibliographie
Carter, RL, et Yang, MCK Inférence sur grand échantillon dans les modèles de régression à coefficients aléatoires. Communications en statistique - Théorie et méthodes (1986) 15 (8): 2507-2525. LIEN
Conover, WJ (1980), Statistiques pratiques non paramétriques, New York : John Wiley and Sons, Inc.
ICH Guidance Q1A(R2), Stability Testing of New Drug Substances and Product, étape 4 version, 6 février 2003. LIEN
Mandel, tableau de contrôle de régression BJ. Technologie J Qual (1969) 1 (1) : 1-9. LIEN
Scholz, F. et Vangel, M. Limites de tolérance et limites de confiance Cpk sous effets de lot. Publié dans : Advanced in Stochastic Models for Reliability, Quality and Safety. Edité par Kahle, W., von Collani, E., Franz, J., et Jensen, U. Birkhäuser, Boston, 1998, 361-379. LIEN
Shewhart, WA (1939). Méthode statistique du point de vue du contrôle de la qualité. (Deming, NOUS). Washington DC, L'Ecole Supérieure, le Département de l'Agriculture.
Procédure opératoire normalisée – Guide de gestion des données de laboratoire – Résultats hors attente (OOE) et hors tendance (OOT). Groupe de travail sur le contrôle de la qualité analytique de l'Académie européenne de la conformité (ECA), Christopher Burgess, projet V 0.3, 2015.
Agence de réglementation des médicaments et des produits de santé du Royaume-Uni (MHRA), Out Of Specification Investigations, notes de présentation et dossier de délégué, 28 août 2013. LIEN
Série de rapports techniques de l'OMS, n° 953, annexe 2 Essais de stabilité des ingrédients pharmaceutiques actifs et des produits pharmaceutiques finis, 2009. LIEN