本文是《Quality by Design for ANDAs: An Example for Immediate-Release Dosage Forms》緩釋制劑包衣處方研究的R語言解決方案。
ER聚合物包衣處方優化研究
基于初步風險評估和初始可行性研究,進行帶3個中心點的24-1分式析因DOE。藥物的釋放被識別為CQA。本研究的目的是研究包衣劑的用量、PVP用量、TEC用量、老化對藥物釋放的影響。
研究的響應是藥物釋放20%,50%,80%的時間,使用USP apparatus 2 ,50 rpm ,pH 6.8 磷酸鹽緩沖液。
表32是研究總結和可接受標準。表33是實驗結果。
影響T50的顯著因子
因為DOE中包含中心點,用調整模型檢查二次效應,方差分析的結果見表34。
因為T50的二次效應并不顯著,將中心點包含于模型。圖23所示的半正態圖和表35的ANOVA分析結果表明,影響T50的顯著因子為A、B、C。
library(FrF2)
study1<-FrF2(nruns=8, nfactors=4, generator=c("ABC"), ncenter=3, replications=1,randomize=FALSE)
y1=c(1.29,2.92,0.81,2.39,1.48,3.07,1.08,2.69,2.12,2.02,1.91)
y2=c(3.37,6.71,2.79,5.81,4.15,7.54,3.27,6.33,5.12,4.98,4.83)
y3=c(8.67,17.74,5.98,16.04,9.12,19.18,7.42,16.48,13.07,12.61,12.27)
study1 <-add.response(study1, y1, replace=FALSE)
study1 <-add.response(study1, y2, replace=FALSE)
study1 <-add.response(study1, y3, replace=FALSE)
print( study1, std.order=TRUE)
A.num <-study1$A
levels(A.num) <- c(20,40)
B.num <- study1$B
levels(B.num) <- c(0,10)
C.num <- study1$C
levels(C.num) <- c(2,10)
D.num <- study1$D
levels(D.num) <- c(0.5,1.5)
A.num <- as.numeric(as.character(A.num))
B.num <- as.numeric(as.character(B.num))
C.num <- as.numeric(as.character(C.num))
D.num <- as.numeric(as.character(D.num))
mod1<-lm(y2 ~ A+B+C+D, data=study1)
> anova(mod1)
Analysis of Variance Table
Response: y2
????????? Df? Sum Sq Mean Sq? F value??? Pr(>F)???
A????????? 1 20.5120 20.5120 859.1964 1.045e-07 ***
B????????? 1? 1.5931? 1.5931? 66.7315 0.0001812 ***
C????????? 1? 0.8515? 0.8515? 35.6677 0.0009883 ***
D????????? 1? 0.0000? 0.0000?? 0.0005 0.9824863???
Residuals? 6? 0.1432? 0.0239??????????????????????
---
Signif. codes:? 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
SS Pure Error=((5.12)^2+(4.98)^2+(4.83)^2-(5.12+4.98+4.83)^2/3)=0.042
純誤差的自由度為2
MS Pure Error =0.042/2=0.021
SS Curvature=8*3*((3.37+6.71+2.79+5.81+4.15+7.54+3.27+6.33)/8-(5.12+4.98+4.83)/3)^2/(8+3)= 0.0008367424
彎曲性的自由度為1
MS Curvature=0.0008367424/1=0.0008367424
SS lack of fit=SS Residuals- SS Pure Error=0.10
失擬的自由度為4
MS lack of fit=0.10/4=0.025
F Curvature=MS Curvature/MS Residuals = 0.0334697
F lack of fit=MS lack of fit/M1S Pure Error=1.190476
Pr(>F) Curvature=1-pf(0.0334697,1,6)= 0.8608647
Pr(>F) lack of fit=1-pf(1.190476,4,2)= 0.5040667
最終的方差分析表如下:
Response: y2
?????? ?????Df? Sum Sq ???????????Mean Sq ??F value??? Pr(>F)???
A???????? ???1 20.5120 ????????????20.5120 ?859.1964 ?1.045e-07 ***
B???????? ???1? 1.5931 ?????????????1.5931? ?66.7315 ?0.0001812 ***
C???????? ???1? 0.8515? ????????????0.8515? ?35.6677 ?0.0009883 ***
D???????? ???1? 0.0000? ????????????0.0000 ???0.0005 ?0.9824863???
Curvature???? 1? 0.0008367424? 0.0008367424 0.0334697? 0.8608647
Residuals? ???6? 0.1432 ??????????????0.0239? ??-?????????? -
lack of fit ????4? 0.10??? ????????????0.025 ????1.190476??? 0.5040667??
Pure Error??? 2? 0.042?????????????? 0.021???? -?????????? -
---
Signif. codes:? 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
library(daewr)
fullnormal(coef(mod1)[-1], alpha=.025)
library(BsMD)
LenthPlot(mod1, main = "Lenth Plot of Effects")
effects <-coef(mod1)
effects <-effects[2:4]
effects <-effects[ !is.na(effects) ]
halfnorm(effects, names(effects), alpha=.25)
mod1<-lm(y2 ~ A.num +B.num +C.num+D.num, data=study1)
library(rsm)
contour(mod1, ~ A.num +C.num)
persp(mod1, ~ A.num +B.num, zlab=" y2", contours=list(z="bottom"))
mod2<-lm(y1 ~ A+B+C+D, data=study1)
anova(mod2)
modv<-lm(y3 ~ A*B*C*D, data=study1)
anova(modv)
因子A是影響釋放的主要因子,其次是???? B,C。其它項并不顯著影響。
additional pore former 對T50的影響見圖24。最終使用Kollicoat SR 30 D 而沒有添加pore former 。
聚合物包衣劑和TEC用量對T50的效應見圖25.因為使用10%TEC時包衣聚合。所以TEC的用量減少到5%。
T20和T80有相似的結果。沒有二次項和交互作用。
DOE研究結果顯示使用25%聚合物,5%TEC,15%滑石粉可以獲得最優特征。
研究了Kollicoat SR 30 D 的批間差異,并且對藥物釋放沒有影響。
最終處方
因為希望ER包衣丸壓片后的釋放不受影響,時行了包衣丸壓片的研究。研究了藥物釋放與壓片力的關系。壓片后藥物釋放顯著變快,提示壓片后丸子有破損。因此需要添加cushioning agents ,基于文獻選擇MCC。