作者:白介素2
相關(guān)閱讀:
R語(yǔ)言生存分析04-Cox比例風(fēng)險(xiǎn)模型診斷
R語(yǔ)言生存分析03-Cox比例風(fēng)險(xiǎn)模型
R語(yǔ)言生存分析-02-ggforest
R語(yǔ)言生存分析-01
ggpubr-專(zhuān)為學(xué)術(shù)繪圖而生(二)
ggstatsplot-專(zhuān)為學(xué)術(shù)繪圖而生(一)
生存曲線
R語(yǔ)言GEO數(shù)據(jù)挖掘01-數(shù)據(jù)下載及提取表達(dá)矩陣
R語(yǔ)言GEO數(shù)據(jù)挖掘02-解決GEO數(shù)據(jù)中的多個(gè)探針對(duì)應(yīng)一個(gè)基因
R語(yǔ)言GEO數(shù)據(jù)挖掘03-limma分析差異基因
R語(yǔ)言GEO數(shù)據(jù)挖掘04-功能富集分析
如果沒(méi)有時(shí)間精力學(xué)習(xí)代碼,推薦了解:零代碼數(shù)據(jù)挖掘課程
Cox比例風(fēng)險(xiǎn)模型診斷
Cox比例風(fēng)險(xiǎn)模型的建立是基于幾個(gè)假設(shè)之上的,因此一般建好模型后需要進(jìn)行診斷,評(píng)估擬合的模型是否能夠用于描述數(shù)據(jù)
診斷的內(nèi)容包括:
比例風(fēng)險(xiǎn)假定;
模型影響點(diǎn)(異常值)識(shí)別;
比例風(fēng)險(xiǎn)的對(duì)數(shù)值與協(xié)變量之間的非線性關(guān)系識(shí)別;
對(duì)上述三方面的診斷,常見(jiàn)的方法為殘差法。
Schoenfeld 殘差用于檢驗(yàn)比例風(fēng)險(xiǎn)假定;
Deviance 殘差用于影響點(diǎn)(異常值)識(shí)別;
Martingale殘差用于非線性檢驗(yàn);
載入survival and survminer
library("survival")
library("survminer")
計(jì)算cox模型
library("survival")
res.cox <- coxph(Surv(time, status) ~ age + sex + wt.loss, data = lung)
res.cox
## Call:
## coxph(formula = Surv(time, status) ~ age + sex + wt.loss, data = lung)
##
## coef exp(coef) se(coef) z p
## age 0.0200882 1.0202913 0.0096644 2.079 0.0377
## sex -0.5210319 0.5939074 0.1743541 -2.988 0.0028
## wt.loss 0.0007596 1.0007599 0.0061934 0.123 0.9024
##
## Likelihood ratio test=14.67 on 3 df, p=0.002122
## n= 214, number of events= 152
## (14 observations deleted due to missingness)
檢驗(yàn)比例風(fēng)險(xiǎn)假設(shè)-PH假設(shè)
- PH假設(shè)可通過(guò)假設(shè)檢驗(yàn)和殘差圖檢驗(yàn)。正常情況下,Schoenfeld殘差應(yīng)該與時(shí)間無(wú)關(guān),如果殘差與時(shí)間有相關(guān)趨勢(shì),則違反PH假設(shè)的證據(jù)。殘差圖上的橫軸代表時(shí)間,如果殘差均勻的分布則表示殘差與時(shí)間相互獨(dú)立。
- R語(yǔ)言survival包中的函數(shù)cox.zph函數(shù)提供簡(jiǎn)便的實(shí)現(xiàn)這一過(guò)程的方法
test.ph <- cox.zph(res.cox)
test.ph
## rho chisq p
## age -0.0483 0.378 0.538
## sex 0.1265 2.349 0.125
## wt.loss 0.0126 0.024 0.877
## GLOBAL NA 2.846 0.416
- 從輸出的結(jié)果看,三個(gè)協(xié)變量的P值都大于0.05,說(shuō)明每個(gè)變量均滿(mǎn)足PH檢驗(yàn),而模型的整體檢驗(yàn)P值0.416也沒(méi)有統(tǒng)計(jì)學(xué)意義,因此我們認(rèn)為模型整體滿(mǎn)足PH檢驗(yàn)。
圖形診斷
survminer包中的ggcoxzph()函數(shù)可以繪制每個(gè)協(xié)變量隨時(shí)間變化的Schoenfeld殘差圖
ggcoxzph(test.ph)
- 上圖中實(shí)線是與曲線擬合的平滑樣條曲線,虛線表示擬合周?chē)?/- 2標(biāo)準(zhǔn)誤差帶。
- 沒(méi)有與時(shí)間相關(guān)變化模式,個(gè)各個(gè)協(xié)變量滿(mǎn)足風(fēng)險(xiǎn)比例假設(shè)
檢驗(yàn)異常的的觀測(cè)
- 繪制Deviance殘差圖或者dfbeta值實(shí)現(xiàn),以下選擇dfbeta,改為deviance即殘差圖
- survminer中的ggcoxdiagnostics()函數(shù)
ggcoxdiagnostics(res.cox, type = "dfbeta",
linear.predictions = FALSE, ggtheme = theme_bw())
上圖表示,將最大dfbeta值的大小與回歸系數(shù)進(jìn)行比較表明,沒(méi)有一個(gè)觀察結(jié)果是單獨(dú)影響的,即使年齡和重量損失的某些dfbeta值與其他值相比較大。
非線性診斷- non linearity
- 通常,我們假設(shè)連續(xù)協(xié)變量具有線性形式。但是,應(yīng)該檢驗(yàn)這個(gè)假設(shè)是否成立。 使用連續(xù)協(xié)變量繪制Martingale殘差是用于檢測(cè)非線性的常用方法,或者換句話說(shuō),用于評(píng)估協(xié)變量的函數(shù)形式。對(duì)于給定的連續(xù)協(xié)變量,圖中的模式可能表明變量不適合。
- R語(yǔ)言survminer中的ggcoxfunctional()函數(shù)可以繪圖
- 例如我們檢驗(yàn)age變量,可使用如下代碼
ggcoxfunctional(Surv(time, status) ~ age + log(age) + sqrt(age), data = lung)
- 結(jié)果顯示,有一定程度的非線性存在