跳到内容

brockk/trialr公司

存储库文件导航

试验-临床试验设计RStan(RStan)

克里提亚·布洛克

试验

起重机版本

试验是实施的贝叶斯临床试验设计的集合在Stan和R中。文件可在网址:https://brockk.github.io/trialr/

临床试验有许多著名的贝叶斯设计和方法。然而,限制其使用的因素之一是软件的可用性。我们在这里展示了一些最受欢迎的,以一致的方式实施和演示,利用贝叶斯计算的强大Stan环境。

实现存在于其他R包中。有时作者会发布的可用代码。然而,使用的挑战仍然存在坚持。不同的方法以不同的风格呈现。特征一种设计在一个包中实现,而另一个包可能会丢失。有时所选择的技术可能只适用于特定的操作系统或所选技术可能已被淘汰。

试验寻求解决这些问题。型号在中指定斯坦,最先进的环境贝叶斯分析。它使用哈密顿蒙特卡罗方法从后部分布。这种方法比吉布斯更有效抽样和可靠推断通常可以在几个1000个后验样本。R、 斯坦和试验每个都有Mac、Linux和Windows,因此这里提供的所有示例都适用于每个操作系统。此外,斯坦提供了一个非常简单的方法来将采样分开n个核心,充分利用现代多核处理器。

中实施的设计试验下面简要介绍,以及在小插曲中得到了更充分的发展。我们专注于现实生活中的使用,包括:

  • 模型与观测数据的拟合;
  • 使用整齐原则处理后验样本,以产生有用的推理;
  • 并使用现代可视化推理ggplot图绘图。

示例

在所有示例中,我们都需要加载试验

图书馆(试验)

客户关系管理

连续重新评估方法(CRM)由O'Quigley、Pepe和Fisher(1990年)。它假设一个平滑的数学模型剂量-毒性曲线表,用于进行剂量测定试验最大耐受剂量。有许多变化以适应不同的临床场景和设计的使用相对普遍,尽管远没有普遍存在的低级3+3那么常见设计。

我们将使用一个概念性的试验示例来演示该方法。五种剂量的情况下,我们寻求具有毒性概率的剂量最接近25%,我们之前对毒性率的猜测可能是代表:

目标 <- 0.25
骨架 <-c(c)(0.05,0.15,0.25,0.4,0.6)

假设我们已经分别治疗了2名患者,剂量分别为2、3和4,在剂量水平4下观察到两种毒性,而在其他地方没有。我们应该给下一个患者或队列注射什么剂量?我们符合数据CRM模型的流行经验变体:

适合1 <-标准配置文件(结果str = '2NN 3NN 4TT(2NN、3NN、4TT)',骨架 = 骨架,目标 = 目标,模型 = '经验主义的',贝塔斯德 =平方英尺(1.34),种子 = 123)

参数outcome_str=“2NN 3NN 4TT”反映出两名患者每个患者都接受了2、3和4次剂量的治疗,这两名患者第4剂量有毒性,但其他患者没有。

拟合模型包含大量有用信息:

适合1
#>患者剂量毒性重量
#> 1       1    2        0      1
#> 2       2    2        0      1
#> 3       3    3        0      1
#>4 4 3 0 1
#> 5       5    4        1      1
#> 6       6    4        1      1
#>
#>剂量骨架N Tox ProbTox MedianProbTox-ProbMTD
#> 1    1     0.05 0   0   0.108        0.0726  0.2140
#> 2    2     0.15 2   0   0.216        0.1900  0.2717
#> 3    3     0.25 2   0   0.310        0.2972  0.2657
#> 4    4     0.40 2   2   0.444        0.4484  0.2090
#> 5    5     0.60 0   0   0.624        0.6395  0.0395
#>
#>该模型的目标毒性水平为0.25。
#>估计毒性概率最接近目标的剂量为2。
#>最可能是MTD的剂量是2。
#>模型熵:1.49
图书馆(ggplot2)图书馆(河豚)图书馆(数字播放器)适合1%>% 扩展绘图(问题毒素[剂量]) %>% ggplot(aes)图(x = 剂量, = 问题毒素))+统计间隔(_I)(.宽度 =c(c)(.5,.8,.95))+scale_color_brewer()+实验室( = '探针(DLT)',标题 = '使用经验CRM的后剂量毒性信念')

CRM的几个变体在“trialr”中实现。这些是在CRM案例中进行了演示。几种可视化技术是如中所示CRM中的可视化小插曲。时间到事件CRM在TITE-CRM小品中介绍。

Neuenschwander、Branson和Gsponer

Neuenschwander、Branson和Gsponer(2008)引入了双参数剂量递增的logistic模型。它具有以下许多特点上面介绍的CRM模型,但它不是一个框架,而是用作将研究中的剂量除以一些参考剂量进行协变量。

例如,在他们的论文中再现一项分析:

剂量 <-c(c)(1,2.5,5,10,15,20,25,30,40,50,75,100,150,200,250)d星 <- 250
目标 <- 0.30

结果 <- '1NNN 2NNNN 3NNNN 4NNNN 7TT型'
适合 <-标准nbg(结果str = 结果,实际剂量(_D) = 剂量,d星 = d星,目标 = 目标,字母平均值 = 2.15,字母_sd = 0.84,β_平均值 = 0.52,贝塔斯德 = 0.8,种子 = 2020,刷新 = 0)适合
#>患者剂量毒性重量
#> 1        1    1        0      1
#> 2        2    1        0      1
#> 3        3    1        0      1
#> 4        4    2        0      1
#> 5        5    2        0      1
#> 6        6    2        0      1
#> 7        7    2        0      1
#> 8        8    3        0      1
#> 9        9    3        0      1
#> 10      10    3        0      1
#> 11      11    3        0      1
#> 12      12    4        0      1
#> 13      13    4        0      1
#> 14      14    4        0      1
#> 15      15    4        0      1
#> 16      16    7        1      1
#>17 17 7 1
#>
#>剂量N毒素ProbTox MedianProbTox-ProbMTD
#> 1     1 3   0  0.0126       0.00563 0.00025
#> 2     2 4   0  0.0325       0.01967 0.00050
#> 3     3 4   0  0.0675       0.04934 0.02250
#> 4     4 4   0  0.1385       0.11863 0.10450
#> 5     5 0   0  0.2064       0.18937 0.16775
#> 6     6 0   0  0.2692       0.25641 0.17100
#> 7     7 2   2  0.3264       0.31878 0.14425
#> 8     8 0   0  0.3780       0.37409 0.16850
#> 9     9 0   0  0.4661       0.46884 0.12475
#> 10   10 0   0  0.5371       0.54698 0.07125
#> 11   11 0   0  0.6616       0.67700 0.02000
#>12 12 0 0 0.7390 0.75753 0.00375
#> 13   13 0   0  0.8259       0.84691 0.00075
#> 14   14 0   0  0.8717       0.89297 0.00025
#> 15   15 0   0  0.8993       0.91986 0.00000
#>
#>该模型的目标毒性水平为0.3。
#>估计毒性概率最接近目标的剂量为7。
#>最可能是MTD的剂量是6。
#>模型熵:2.06

这再现了右下窗格中描述的推论图1摘自Neuenschwander、Branson和Gsponer(2008)。

有关更多信息,请参阅剂量测定的双参数logistic模型Neuenschwander、Branson和Gsponer小插曲。

有效Tox

Thall和Cook(2004)的EffTox是一种剂量发现设计,使用选择高剂量的二元疗效和毒性结果效用得分。我们在这里简要介绍一下,但还有更多在EffTox渐晕图中进行彻底检查。

为了进行演示,我们采用了Thall介绍的模型参数化et al.(2014)得出以下概念性结果:

病人 剂量水平 毒性 功效
1 1 0 0
2 1 0 0
1 0 1
4 2 0 1
5 2 0 1
6 2 1 1
结果 <- '1NNE(东北)2EEB'
适合2 <-标准偏差x偏差(结果,种子 = 123)

在疗效和毒性剂量发现场景中,患者人数结果有所增加。患者可能会体验到疗效只有(E),只有毒性(T),两者都有(B)或两者都没有(N)。

适合2
#>患者剂量毒性疗效
#> 1       1    1        0        0
#> 2       2    1        0        0
#> 3       3    1        0        1
#> 4       4    2        0        1
#> 5       5    2        0        1
#> 6       6    2        1        1
#>
#>剂量N ProbEff ProbTox ProbAccEf ProbAccTox实用程序可接受的ProbOBD
#>1 1 3 0.402 0.088 0.333 0.927-0.342真0.0465
#>2 2 3 0.789 0.103 0.943 0.921 0.412真0.2625
#>3 3 0 0.929 0.225 0.984 0.718 0.506真0.2077
#>4 4 0 0.955 0.315 0.983 0.617 0.420假0.0620
#>5 5 0 0.964 0.372 0.980 0.561 0.349假0.4213
#>
#>模型建议选择剂量水平3。
#>最有可能是OBD的剂量是5。
#>模型熵:1.36

在这个例子中,在对我们的六名患者进行评估后,剂量建议下一组为剂量水平3。这包含在安装对象:

适合2$推荐剂量
#> [1] 3

这并不奇怪,因为剂量3的效用得分最高:

适合2$效用
#> [1] -0.3418428  0.4120858  0.5064312  0.4199298  0.3493254

有时,建议使用最大效用剂量以外的剂量因为剂量可接受性规则。请参阅EffTox小品和更多详细信息,请参阅原始文件。

提供了创建有用绘图的功能。例如,它是绘制概率的后验平均值权衡等值线上每个剂量的疗效和毒性用于测量剂量吸引力。五种剂量以红色显示。靠近右下角的剂量具有更高的效用。

efftox_contour_plot效果(适合2)标题('EffTox工具轮廓')

此示例在EffTox小插曲中继续。有很多与EffTox相关的出版物,包括Thall和Cook(2004)以及Thall等人(2014年)。

相关队列反应的层次分析

坚持Peter Thall对贝叶斯临床的巨大贡献试验,Thall等人(2003)描述了一种分析治疗方法单次干预对单次干预的多个子类型的影响疾病。

我们演示了一种将响应率部分集中到各种肉瘤亚型中的单一药物。此示例用于Thall等人(2003年)。将数据拟合到模型:

适合3 <-标准层次响应(组_响应 =c(c)(0,0,1,,5,0,1,2,0,0),组大小(_S) =c(c)(0,2,1,7,5,0,2,,1,0),最小值(_M) = -1.3863,mu_sd(单位:天) =平方英尺(1 / 0.1),陶阿帕 = 2,陶贝塔 = 20)

是平均值和精度参数模型中的部分聚集效应。最小值(_M)mu_sd(单位:天)正常先验的超参数,以及陶阿帕tau贝塔逆伽马先验的超参数。本规范为在原始模型中描述。

返回的对象与rstan返回的拟合类型相同:

适合3
#>Stan模型的推断:ThallHierarchicalBinary。
#>4条链条,每条iter=2000;预热=1000;薄=1;
#>每条链的预热后拉伸=1000,预热后拉伸总数=4000。
#>
#>平均se_mean sd 2.5%25%50%75%97.5%n_eff
#>亩-0.04 0.03 1.38-2.86-0.89-0.02 0.86 2.60 2295
#>西格玛2 13.22 0.59 16.18 3.45 6.44 9.56 14.77 43.41 748
#>ρ[1]-0.03 0.07 3.87-8.25-2.26 0.08 2.29 7.20 3079
#>ρ[2]-3.03 0.06 2.63-9.68-4.20-2.55-1.31 0.69 1899
#>ρ[3]2.46 0.07 2.86-1.87 0.65 2.06 3.83 9.13 1497
#>ρ[4]-0.31 0.01 0.79-1.87-0.82-0.31 0.21 1.22 4031
#>ρ[5]3.76 0.06 2.42 0.59 2.11 3.31 4.78 10.04 1448
#>ρ[6]-0.09 0.07 3.85-8.34-2.27 0.02 2.27 7.41 3092
#>ρ[7]0.06 0.03 1.53-2.90-0.92 0.09 0.99 3.05 3658
#>ρ[8]0.75 0.02 1.31-1.55-0.12 0.65 1.52 3.65 2785
#>ρ[9]-2.43 0.07 2.91-9.18-3.86-2.00-0.50 2.09 1919
#>ρ[10]0.01 0.07 3.97-7.85-2.29 0.05 2.38 7.74 2982
#>西格玛3.38 0.05 1.33 1.86 2.54 3.09 3.84 6.59 819
#>问题_响应[1]0.50 0.01 0.38 0.00 0.09 0.52 0.91 1.00 3476
#>问题_响应[2]0.15 0.00 0.18 0.00 0.01 0.07 0.21 0.67 3817
#>问题_响应[3]0.78 0.00 0.25 0.13 0.66 0.89 0.98 1.00 4141
#>问题_响应[4]0.43 0.00 0.17 0.13 0.31 0.42 0.55 0.77 4036
#>探针响应[5]0.92 0.00 0.10 0.64 0.89 0.96 0.99 1.00 3879
#>问题_响应[6]0.50 0.01 0.38 0.00 0.09 0.51 0.91 1.00 3564
#>探针响应[7]0.51 0.00 0.27 0.05 0.28 0.52 0.73 0.95 3642
#>探针响应[8]0.64 0.00 0.22 0.18 0.47 0.66 0.82 0.97 3040
#>问题_响应[9]0.23 0.00 0.26 0.00 0.02 0.12 0.38 0.89 3971
#>问题_响应[10]0.50 0.01 0.38 0.00 0.09 0.51 0.92 1.00 2970
#>lp__-34.42 0.15 3.77-43.20-36.48-33.86-31.71-28.88 611
#>拉特
#>亩
#>信号2 1
#>ρ[1]1
#>ρ[2]1
#>ρ[3]1
#>ρ[4]1
#>ρ[5]1
#>ρ[6]1
#>ρ[7]1
#>ρ[8]1
#>ρ[9]1
#>ρ[10]1
#>西格玛1
#>问题_响应[1]1
#>问题响应[2]1
#>问题_响应[3]1
#>问题_响应[4]1
#>问题_响应[5]1
#>问题响应[6]1
#>问题_响应[7]1
#>问题_响应[8]1
#>问题_响应[9]1
#>问题_响应[10]1
#>lp__ 1个
#>
#>使用NUTS(diag_e)于2020年10月15日星期四09:52:56提取样品。
#>对于每个参数,n_eff是有效样本大小的粗略度量,
#>Rhat是分裂链上的潜在标度折减系数(at
#>收敛,Rhat=1)。

因此,我们可以在rstan公司

图书馆(rstan公司)图书馆(ggplot2)绘图(适合3,部分 = '问题_响应')+地理vline(辛特西普 = 0.3,科尔 = '橙色',线型 = '虚线')+实验室(标题 = '10种肉瘤亚型的部分聚集反应率')

二元响应的层次模型是自己开发的小插曲。

PePS2中的BEBOP

Thall、Nguyen和Estey(2008)引入了EffTox的扩展允许根据疗效和毒性结果确定剂量,并针对协变量信息。布罗克等人(手稿已被接受,但尚未收到press)通过移除剂量测定组件简化了方法留下一个研究联合初级和毒性结果的设计在由基线协变量确定的任意数量的队列中。他们将简化的设计称为BEBOP,因为贝叶斯评估具有预测变量的二元二进制结果

研究人员实施的设计是pembrolizumab治疗非小细胞肺癌。A distinct feature of the试验是预测基线协变量的可用性值得注意的是由Garon显示的PD-L1肿瘤比例得分等人(2015)将其作为药物疗效的预测性生物标志物。

该示例在BEBOP小品中进行了演示。

安装

您可以使用以下工具从github安装最新的trialr commit:

#install.packages(“devtools”)
开发工具时间:安装github("brockk/trialr公司")

您可以通过运行以下命令安装最新的CRAN版本:

安装.包("试验")

不用说,CRAN版本将比github版本。

延长试验和联系

如果您想在Stan中实现已发布的贝叶斯设计,联系。联系github上的brokk。

工具书类

加隆、爱德华·B、奈耶·a·里兹维、丽娜·惠、娜塔莎·利格尔、安妮·SBalmanoukian、Joseph Paul Eder、Amita Patnaik等人,2015年。“彭布罗单抗治疗非小细胞肺癌。”这个新英格兰医学杂志372 (21): 2018–28.https://doi.org/10.1056/NEJMoa1501824

Neuenschwander、Beat、Michael Branson和Thomas Gsponer。2008“贝叶斯方法在第一阶段癌症试验中的关键方面。”医学统计学27(13):2420–39。https://doi.org/10.1002/sim.3230

O’Quigley、J、M Pepe和L Fisher。1990.“持续重新评估方法:癌症第一阶段临床试验的实用设计。”生物计量学46 (1): 33–48.https://doi.org/10.2307/2531628

Thall、Peter F.、Hoang Q.Nguyen和Elihu H.Estey。2008“基于双变量结果和协变量。”生物计量学64 (4): 1126–36.https://doi.org/10.1111/j.1541-0420.2008.01009.x

泰尔、彼得·F·J·凯尔·瓦森、B.内比尤·贝克勒、理查德·尚普林、,劳伦斯·H·贝克和罗伯特·S·本杰明。2003.“层次贝叶斯多亚型疾病II期试验方法。”医学统计学22 (5): 763–80.https://doi.org/10.1002/sim.1399

Thall、PF和JD Cook。2004.“基于功效-毒性的剂量测定权衡。”生物计量学60 (3): 684–93.

Thall、PF、RC Herrick、HQ Nguyen、JJ Venier和JC Norris,2014年。“贝叶斯算法中计算先验超参数的有效样本量第一阶段至第二阶段剂量测定。”临床试验11 (6): 657–66.https://doi.org/10.1177/1740774514547397

关于

R&RStan的临床试验设计

资源

星星

观察者

叉子

包装

未发布包

贡献者

  •  
  •  
  •