R语言解释生存分析中危险率和风险率的变化

95%置信区间限制非常接近此处的估计线,因为我们已经模拟了具有大样本量的数据集。

有时危险函数不会是恒定的,这将导致累积危险函数的梯度/斜率随时间变化。 

危险函数

 让我们模拟R中的一些数据:

n < -  10000
h < -  0.5
t < -  -log(runif(n))/ h

该代码模拟了危险函数的存活时间,即常数。 

event< -  1 *(t <5)
obstime< -  t
obstime [obstime> = 5] < -  5

现在让我们使用R中的生存包绘制估计的生存函数:

survfit < -  survfit(Surv(obstime,event)~1)

  ​

Kaplan-Meier

95%置信区间限制非常接近此处的估计线,因为我们已经模拟了具有大样本量的数据集。

累积危险率函数


为了确定危险函数是否在变化,我们可以绘制累积危险函数,

plot(survfit,fun =“cumhaz”)


危险变化


有时危险函数不会是恒定的,这将导致累积危险函数的梯度/斜率随时间变化。 

我们现在将再次模拟生存时间 :

highrisk < -  1 *(runif(n)<0.5)
h < -  0.5 + highrisk * 1.5
t < -  -log(runif(n))/ h
 
obstime [obstime> = 5] < -  5

我们再次绘制累积危险函数:

  

​ 累积危险图,其中样本由50%低风险和50%高风险对象组成


该图的自然解释是受试者经历的危险随着时间的推移而减少,因为累积危险函数的梯度/斜率随时间降低。 

改变风险比


在我们比较两组生存率的研究中可能出现同样的问题,例如在比较两种治疗方案的随机试验中。这种比较通常通过估算两组之间的风险比来概括,假设两组的危害比率随着时间的推移是恒定的,使用Cox的比例风险模型。 

highrisk < -  1 *(runif(n)<0.5)
治疗< -  1 *(runif(n)<0.5)
 t < -  -log(runif(n))/ h
事件< -  1 *(t <5)
时间< -  t
obstime [obstime> = 5] < -  5

现在让我们分别按治疗组绘制累积危险函数:

 

可下载资源

关于作者

Kaizong Ye拓端研究室(TRL)的研究员。

本文借鉴了作者最近为《R语言数据分析挖掘必知必会 》课堂做的准备。

​非常感谢您阅读本文,如需帮助请联系我们!

 
QQ在线咨询
售前咨询热线
15121130882
售后咨询热线
0571-63341498

关注有关新文章的微信公众号


永远不要错过任何见解。当新文章发表时,我们会通过微信公众号向您推送。

技术干货

最新洞察

This will close in 0 seconds