
临床研究中经常会遇到找出某连续变量最佳切点的问题。例如检测A、B两组患者的某连续性指标x,研究者想找出一个最佳的切点值μ(cut-off值),大于μ认为是阳性,能够在A、B两组中体现出阳性率的差异最大,此时A、B两组的阳性率更容易检验出差异有统计学意义,在临床工作中应用也更为方便。
对于这一问题我们很容易就联想到诊断试验中cut-off值的选择,在诊断试验中往往依据Youden指数最大来进行切点值的选择,也就是让灵敏度加上特异度最大化,这个计算过程我们可以通过受试者工作特征曲线(ROC曲线)分析来实现。同样我们也可以考虑手工对x进行很多次分组,每分组一次就使用χ2检验计算一下A、B两组的χ2值和P值,依此类推选出χ2值最大的时候对应的那个x的分组值为最后的切点值。这就是最大选择统计计算的基本思想。
上述的问题是一个分组变量(A、B两组)和一个连续性变量x的计算过程。而对于生存分析的资料是既有结局变量,又有该结局变量所对应的发生时间(连续性变量)。比如若想研究某疾病的复发与某指标x的关系,那么应该收集研究对象复发与否的信息(status, time),其中status是(0,1)变量,time是连续性的时间,这就是典型的生存资料。
此时我们想找出一个x值的切点值,想利用该切点将研究对象分成两组,并且在两组间尽可能达到差异有统计学意义。这个计算的基本思想同上述的χ2检验,就是按照x的不同切点值进行很多次分组,分组后进行log-rank检验,选择差异最大的那个检验结果所对应的x的切点值为最佳cut-off值。这一计算过程我们可以依靠R软件来进行。R软件是一个自由免费软件,在医学统计上也被广泛使用,读者可在其官方网站上下载安装(https://www.r-project.org/)。
以下是R软件进行生存资料计算的代码:1.install.packages("maxstat");2. install.packages("survival");3.library ("maxstat");4.library("survival");5.dataset=read.csv(choose.files());6.cutoff<- maxstat.test(Surv(time, status)~x, data=dataset, smethod="LogRank", pmethod="Lau94",minprop=0.25, maxprop=0.75);7.cutoff;8.plot(cutoff)
上述语句解释如下(1~8为各行编号):
1、2是分别安装maxstat和survival程序包;3、4是分别加载maxstat和survival程序包;5是以CSV的格式读入要分析的数据;6是切点值的计算(关键步骤),其中smethod是用来选择检验方法,pmethod是用来选择p值的估算方法,minprop是指定分组后最小组患者的数量不少于总例数的25%,maxprop是指定分组后最大的患者数量不多于总数量的75%;7是展示计算的结果,包括筛选出的最大切点值;8是对计算过程作图,即不同切点值和检验统计量的关系图。
临床研究中经常会遇到找出某连续变量最佳切点的问题。例如检测A、B两组患者的某连续性指标x,研究者想找出一个最佳的切点值μ(cut-off值),大于μ认为是阳性,能够在A、B两组中体现出阳性率的差异最大,此时A、B两组的阳性率更容易检验出差异有统计学意义,在临床工作中应用也更为方便。
对于这一问题我们很容易就联想到诊断试验中cut-off值的选择,在诊断试验中往往依据Youden指数最大来进行切点值的选择,也就是让灵敏度加上特异度最大化,这个计算过程我们可以通过受试者工作特征曲线(ROC曲线)分析来实现。同样我们也可以考虑手工对x进行很多次分组,每分组一次就使用χ2检验计算一下A、B两组的χ2值和P值,依此类推选出χ2值最大的时候对应的那个x的分组值为最后的切点值。这就是最大选择统计计算的基本思想。
上述的问题是一个分组变量(A、B两组)和一个连续性变量x的计算过程。而对于生存分析的资料是既有结局变量,又有该结局变量所对应的发生时间(连续性变量)。比如若想研究某疾病的复发与某指标x的关系,那么应该收集研究对象复发与否的信息(status, time),其中status是(0,1)变量,time是连续性的时间,这就是典型的生存资料。
此时我们想找出一个x值的切点值,想利用该切点将研究对象分成两组,并且在两组间尽可能达到差异有统计学意义。这个计算的基本思想同上述的χ2检验,就是按照x的不同切点值进行很多次分组,分组后进行log-rank检验,选择差异最大的那个检验结果所对应的x的切点值为最佳cut-off值。这一计算过程我们可以依靠R软件来进行。R软件是一个自由免费软件,在医学统计上也被广泛使用,读者可在其官方网站上下载安装(https://www.r-project.org/)。
以下是R软件进行生存资料计算的代码:1.install.packages("maxstat");2. install.packages("survival");3.library ("maxstat");4.library("survival");5.dataset=read.csv(choose.files());6.cutoff<- maxstat.test(Surv(time, status)~x, data=dataset, smethod="LogRank", pmethod="Lau94",minprop=0.25, maxprop=0.75);7.cutoff;8.plot(cutoff)
上述语句解释如下(1~8为各行编号):
1、2是分别安装maxstat和survival程序包;3、4是分别加载maxstat和survival程序包;5是以CSV的格式读入要分析的数据;6是切点值的计算(关键步骤),其中smethod是用来选择检验方法,pmethod是用来选择p值的估算方法,minprop是指定分组后最小组患者的数量不少于总例数的25%,maxprop是指定分组后最大的患者数量不多于总数量的75%;7是展示计算的结果,包括筛选出的最大切点值;8是对计算过程作图,即不同切点值和检验统计量的关系图。