生存分析指的是一系列用來探究所感興趣的事件的發生的時間的統計方法。dom
生存分析被用於各類領域,例如:函數
癌症研究爲患者生存時間分析,spa
「事件歷史分析」的社會學code
在工程的「故障時間分析」。對象
在癌症研究中,典型的研究問題以下:blog
某些臨牀特徵對患者的生存有何影響?事件
我的三年存活的機率是多少?rem
各組患者的生存率有差別嗎?get
=數據分析
在這裏,咱們從定義生存分析的基本術語開始,包括:
生存時間和事件
生存函數和風險函數
癌症研究中的生存時間和事件類型
有不一樣類型的事件,包括:
復發
死亡
觀察開始到觀察終止的\_時間\_一般稱爲\_生存時間\_(或事件發生的時間)。
癌症研究中兩個最重要的評價方法包括:i)死亡時間;和ii)無\_復發存活時間\_,其對應於治療反應與疾病復發之間的時間。它也被稱爲無\_病生存時間\_和無\_事件生存時間\_。
如上所述,生存分析側重於直到發生感興趣事件(復發或死亡)的指望持續時間。
Kaplan-Meier(KM)方法是一種非參數方法,用於估計觀察到的生存時間的生存機率(Kaplan和Meier,1958)。
生存曲線是管理生存機率與時間的關係曲線,它提供了一個有用的數據總結,能夠用來估計諸如中位生存時間之類的衡量指標。
生存分析總結和可視化生存分析結果
咱們將使用生存包中提供的肺癌數據。
head(lung) inst time status age sex ph.ecog ph.karno pat.karno meal.cal wt.loss 1 3 306 2 74 1 1 90 100 1175 NA 2 3 455 2 68 1 0 90 90 1225 15 3 3 1010 1 56 1 0 90 90 NA 15 4 5 210 2 57 1 1 90 60 1150 11 5 1 883 2 60 1 0 100 90 NA 0 6 12 1022 1 74 1 1 50 80 513 0
inst:機構代碼
時間:以天爲單位的生存時間
狀態:狀態1 =審查,2 =死亡
年齡:年齡
性別:男= 1女= 2
ph.ecog:ECOG表現評分(0 =正常 5 =死亡)
ph.karno:Karnofsky表現評分(差 = 0 正常= 100)由醫師評定
pat.karno:Karnofsky表現評分由患者評估
膳食:餐時消耗的卡路里
wt.loss:過去六個月的體重降低
計算生存曲線:survfit()
咱們要按性別來計算生存機率。
函數\_survfit\_()能夠被用來計算Kaplan-Meier生存估計。
要計算生存曲線,請輸入如下內容:
print(fit) n events median 0.95LCL 0.95UCL sex=1 138 112 270 212 310 sex=2 90 53 426 348 550
默認狀況下,函數print()顯示生存曲線的摘要。它顯示觀察數,事件數量,中位數生存和中位數的置信區間。
若是要顯示生存曲線的更完整摘要,請輸入如下內容:
# 生存曲線摘要 summary(fit)# summary(fit)$table
咱們 生成兩組受試者的生存曲線。
ggplot(fit, pval = TRUE, conf.int = TRUE, risk.table = TRUE, # 添加風險表 risk.table.col = "strata", # 按組更改風險表顏色
\_legend.labs\_更改圖例標籤。
ggplot( fit, # 具備計算統計信息的survfit對象。 pval = TRUE, # 顯示對數秩檢驗的p值。 conf.int = TRUE, # 顯示生存曲線點估計的置信區間。 conf.int.style = "step", # 自定義置信區間樣式 xlab = "Time in days", # 自定義X軸標籤。 break.time.by = 200, # 以200的時間間隔打斷X軸。 ggtheme = theme_light(), # 使用主題自定義繪圖和風險表。 risk.table = "abs_pct", # 絕對數值
每組的中位生存時間表示生存機率S(t)爲0.5的時間。
使用參數\_xlim\_能夠縮短生存曲線範圍,以下所示:
請注意,可使用參數\_fun\_指定三個常常使用的轉換:
累積風險是經常使用來估計風險機率。
、
Kaplan-Meier生命表:生存曲線的總結
如上所述,您可使用函數\_summary\_()來得到生存曲線的完整摘要:
summary(fit)
對\_數秩檢驗\_是比較兩條或更多條生存曲線的最普遍使用的方法。零假設是兩組在生存期間沒有差別。
可使用survdiff()以下:
surv_diff N Observed Expected (O-E)^2/E (O-E)^2/V sex=1 138 112 91.6 4.55 10.3 sex=2 90 53 73.4 5.68 10.3 Chisq= 10.3 on 1 degrees of freedom, p= 0.00131
存活率差別的對數秩檢驗給出p = 0.0013的p值,代表性別組在存活方面差別顯着。
在本節中,咱們將使用多個因素的組合計算生存曲線。接下來,咱們將使用ggsurvplot()輸出結果
ggplot(fit, conf.int = TRUE, risk.table.col = "strata", # 按組更改風險表顏色 ggtheme = theme_bw(), # 更改ggplot2主題
可視化輸出。下面的圖顯示了性別變量根據rx&adhere的值的生存曲線。
生存分析是一組數據分析的統計方法,其中感興趣的結果變量是事件發生以前的時間。
在這篇文章中,咱們演示瞭如何使用兩個R軟件包來執行和可視化生存分析)。
最受歡迎的看法
3.R語言如何在生存分析與Cox迴歸中計算IDI,NRI指標