R语言缓释制剂QBD解决方案之一
本文是《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。