Trade-off Between Effect Size Assumptions and Boundary Definition in Sample Size Estimation
我女朋友约会总爱迟到,比如本来约好的19:00餐厅见面,总能给我19:30才到,于是我想了一个办法,告诉她说我们18:30见面,然后她不就正好19:00到,符合我的心理预期了吗(虽然事实证明我还是太天真,不过这是后话)?我今天想跟大家分享的是,当我们在进行临床样本量计算的疗效预估(Effect Size Assumption)和最终试验成功(Reject H0)的界值(Boundary)之间的关系与区别,大家可以对应一下,疗效预估和界值,哪一个是18:30,哪一个是19:00。
1. 从单臂试验说起
假设有一个罕见肿瘤的确证临床单臂设计需要你进行样本量计算,假设经过与MM“友好”的沟通,已经告知了你以下参数:
药物的预估疗效: Confirmed ORR = 30%
临床有意义对照:ORR = 10%
α=0.025
β=0.1
考虑到在进行率的单臂样本量考量时n和Power的锯齿状关系(如下图所示),我们会选择一个Power不会再下降到90%以下的n,如45。
图1.1 样本量和把握度的关系
一般来说,商用的样本量计算软件都会在最后得出一个结论,类似“Reject H0 If R ≥10”,也就是意味着当45例受试者中有10例达到response,你这么一算,发现10/45 = 22.2%,直觉告诉你,something is wrong,但是实际上,这个22.2%(boundary)与30%(effect size assumption)有联系并不相同,一个是统计学拒绝H0的成功最低标准,另一个是在样本量计算阶段的预设,预设是有冗余的,就像我跟女朋友约定见面时间一样,而拒绝H0的标准是严格的,就像我最晚可以接受的见面时间一样,再晚我可能会骂她一顿(事后还得哄- -!)。好了,到了现在,我们应该了解到疗效预估和界值的区别,那么除了单臂设计之外,常规的1∶1临床试验如何在试验未开展前得出boundary,做到心中有数呢?
2. Boundary的计算
2.1 基础公式
说起来界值,总有种似曾相识的感觉,非劣效界值吗?好像没啥关系。我是在哪里提到过来着?没错,就是成组序贯设计的试验中,在期中分析时,存在有效终止和无效终止界值,有具体的计算方式可以得出界值,那么我们可以不可以直接利用相关的公式,计算fix-design下的界值呢?
经过深究了gsDesign包的源代码,对于正态分布终点,得出了如下用来计算其boundary的公式:
其中参数的代表如下表格所示:
我们现在假定有一个1∶1的临床试验,有以下的参数设置用来计算样本量:
根据我的前面提到的式(1),可以得出\hat{\Delta}=-6.01,也就是说基于 \Delta_1 = -10的疗效假设,其界值应至少小于-6.01,才有较大可能拒绝H0。
2.2 便于计算
有同学提到,难道我每次计算boundary时,都要套公式吗?当然,我们也可以直接借用gsDesign包的shiny来进行计算(我太懒了!忏悔,等有时间一定把其他终点直接计算的公式补充上)。依旧是选用上面的正态数据分布的参数,如下所示:
图2.1 gsDesign shiny app 示意图
键入一个较小的Timing值,可以得到对应的Boundary,也就是-6.01,跟公式算出的几乎没有差异。其他类型终点也可以用相同的方法计算得出。
3. 关于Boundary的准确性-模拟验证
也许有的同学会质疑该方法算出的boundary是否代表真实值,还记得我前面提到的“才有较大可能拒绝H0。”有请注意我说的是有较大可能,为什么这么说呢?因为自从统计学引入了数学之后,其就成为了从不完美中追求最合理的解释的科学。即使最终结果显示-6.01,也并不一定会拒绝零假设,因为这些推断是需要一些前提条件的,在这个例子中其需要满足正态分布,而且标准差不能超出预期,-6.01才变得更接近真实值,更何况在实际的临床试验中还存在一些协变量需要调整的问题。下面我们看来一个简单的模拟:
图2.2 模拟步骤
图2.3 正态数据的检验结果
可以看出,在正态分布下,当difference 小于-6.01时且SD不超出预期太多时,可以拒绝H0得出试验组和对照组有统计学差异的结论,蓝色图例和橙色图例。
图2.4 双峰数据的检验结果
可以看出,在非正态分布下,当difference 小于-6.01,SD ≤20时,不一定会得出拒绝H0的结论,也就是蓝色图例。

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。