临床试验统计篇-肿瘤试验终点指标计算

2021-12-16 14:15:02 浏览数 (1)

1.概述

临床试验终点(End Point)服务于不同的研究目的。在传统的肿瘤药物的研发中,早期的临床试验目的是评价安全性以及药物的生物活性,如肿瘤缩小。后期的有效性研究通常评价药物是否能提供临床获益,例如生存期延长或症状改善等。

2.疗效指标定义:

2.1时间-事件类型指标:

总生存期 (Overall Survival ,OS):从随机分组开始至患者因任何原因死亡的时间。

无病生存期(Disease-Free Survival ,DFS):从随机分组开始到出现肿瘤复发或由任何原因引起死亡之间的时间。尽管在大多数辅助治疗的情况下,总生存期仍然是一个传统的终点指标,但是当生存期延长而使得选择生存期为临床试验终点不现实的时候,DFS可以作为一个重要的终点指标。

无进展生存期(Progression-Free Survival ,PFS):PFS定义为从随机分组开始至出现肿瘤客观进展或死亡之间的时间。

疾病进展时间(Time to Progression ,TTP):TTP定义为从随机分组开始至出现肿瘤客观进展之间的时间。TTP不包括死亡。

治疗失败时间(Time to Treatment Failure ,TTF):即从随机化开始到无论何种原因(包括疾病进展、治疗毒性和死亡)导致治疗终止之间的时间。

2.2率指标:

客观缓解率(Objective Response Rate ,ORR)(有的称总体缓解率):指肿瘤体积缩小达到预先规定值并能维持最低时限要求的患者比例。一般定义客观缓解率为完全缓解加上部分缓解之和。

总体缓解率(ORR):接受治疗后肿瘤评估至少一次达到完全缓解(CR)或者部分缓解(PR)的患者的比例。

疾病控制率(DCR):在接受治疗后肿瘤评估至少一次达到完全缓解(CR)、部分缓解(PR)或病变稳定(SD)的患者的比例。

3.疗效指标计算

3.1时间-事件类型

3.1.1 SAS计算:

计算不同组别疾病进展时间(TTP)和无进展生存期(PFS),采用Kaplan-Meier法进行描述性统计,采用Greenwood方法计算标准误差,并提供95%置信区间,绘制生存曲线图。采用log-rank检验比较不同治疗组之间生存曲线是否有差异。

部分原始数据:

原始数据原始数据

可私信我发送原版Excel数据,也使用R语言去下载原lung数据。

3.1.2 SAS code:

代码语言:txt复制
*
输入:
Lung为数据集(包含subjid受试者、time生存时间、status状态)
每个生存时间生存率计算=本时间点死亡数量/本时间点开始时存活数量。
        本时间点删失的不算死亡,但是计算下一个时间点时算死亡,不计入下个时间点计算的分母中。
        
输出:
1.采用ci表画生存曲线图。
2.lpgrank检验的p值在等价与组检验表单。
3.中位生存时间和CI在lung_3。;


proc lifetest data=lung outsurv=ci method=km atrisk conftype=log;
time time*status(1);
strata /group=sex test=(logrank);
ods output productLimitEstimates=lung_2 quartiles=lung_3;
run;

*code解释:
proc lifetest:调用生存分析过程步。
data=lung:输入lung数据集。
outsurv=ci:输出ci数据表(见如下截图)。
method=km:绘制Kaplan-Meier曲线。
atrisk :输出lung_2的NumberAtRisk有风险人数(分母),ObservedEvents达到终点事件人数。
time*status(1):生存时间*状态(删失标识)。
test=(logrank):采用logrank检验法。
ods output:输出两个数据集lung_2,lung_3(见下文。)
;

CI表CI表
Lung_2表Lung_2表
Lung_3表Lung_3表
生存曲线图生存曲线图

3.1.2 计算原理如下:

t_{1}< t_{2}<t_{3}<t_{4}<....<t{_k},表示事件发生的k个时间点;

n_{j}:表示时刻tj前的生存人数;

d_{j}:表示t_{j}时刻发生事件(到达终点)的人数,并记s_{j}=n_{j}-d_{j};

则生存分布函数(SDF)如下:

hat{S}left ( t_{j} right )=prod_{i=1}^{j}(1-frac{d_{k}}{n_{k}})

标准误为(Greenwood法):

hat{sigma}( hat{S}left ( t_{j} right ))=hat{S}left ( t_{j} right )sqrt{sum_{k=1}^{j}frac{d_{k}}{n_{k}s_{k}}}

95%置信区间为,第一种方式(Kalbfleisch&Prentice 1980.,excel暂时未计算出来):

hat{S}left ( t_{j} right )^{exp(pm 1.96s)}\ s=hat{sigma}( hat{S}left ( t_{j} right ))/(hat{S}left ( t_{j} right )*ln(hat{S}left ( t_{j} right )))

95%置信区间为,第二种方式(SAS计算方式):

hat{S}left ( t_{j} right ) pm 1.96 hat{sigma} (hat{S}left ( t_{j} right ))

可私信我获取excel计算文件。

两条生存曲线的检验(logrank法):

H0:两组个体在任意时间点,生存率无差异。

H1:两组个体在任意时间点,生存率有差异。

组别

到达终点事件数

生存个体数

风险个体数(合计)

组A

daj

saj=naj-daj

naj

组B

dbj

sbj=nbj-dbj

nbj

合计

dj

sj

nj

将所有的时间点都罗列出来,计算每个时间点的实际频数和理论频数,构建x^2 统计量

sum_{i=1}^{k}(Q_{A}-E_{A})/E_{A} sum_{i=1}^{k}(Q_{B}-E_{B})/E_{B}

即可计算出p值。可参考https://zhuanlan.zhihu.com/p/392104512?ivk_sa=1024320u。

风险比率(hazard ratio,HR)的计算:

HR=frac{Q_{A}/E_{A}}{Q_{B}/E_{B}}

3.2率指标sas计算

计算各组ORR、DCR及95%置信区间,采用Fisher精确检验进行比较。(若真实世界研究,则同时采用倾向性评分匹配的方法,对基线进行矫正后采用Fisher精确检验进行比较。)

sas代码如下:

代码语言:txt复制
*
输入:
rr为数据集(包含SUBJID受试者编号、ARM组别、ORR是否达到ORR)

输出:
OneWayFreqs:单因子频数
Binomial:二项式比例
BinomialTest:二项式比例检验
单组率和95CI在二项式比例表中。

;

ods output Binomial= Binomial;
proc freq data=rr;
by arm;
table ORR/binomial alpha=0.05;
run;

4.关于删失的一些考虑

事件/删失

事件/删失原因

分类

事件

进展

进展

事件

死亡

死亡

事件

没有基线影像学检查

没有基线影像学检查

删失

发生事件前开始了新的抗肿瘤治疗

开始新的抗肿瘤治疗

删失

发生事件的日期距上一次影像学检查日期大于两个评估周期

连续两次影像学检查缺失

删失

服药后无疗效评价或疗效评价的结果均为NE

服药后无疗效评价

删失

没有发生事件,且受试者仍在继续服药

继续治疗

删失

没有发生事件,且受试者已出组

失访

在计算生存率时对删失的处理:本时间点删失的不算死亡,但是计算下一个时间点时算死亡,不计入下个时间点计算的分母中。具体可看excel表格中对生存率的计算。

5.参考文献

1.CDE.抗肿瘤药物临床试验终点技术指导原则.

2.CDE.抗肿瘤药物上市申请临床数据收集技术指导原则.

3.CDE.抗肿瘤药物临床试验技术指导原则.

4.渣渣东的微信公众号.https://mp.weixin.qq.com/s/U8lxK9EmitQmb3wr_FNVRA.

5.陈峰等.临床试验统计学.

6.知乎王不留行.https://zhuanlan.zhihu.com/p/392104512?ivk_sa=1024320u.

0 人点赞