新聞動態
公司動態
會議與講座
精彩資料
會議報導
SCI&基金&講座資料
MedSci服務與公司動態
會議資訊
常見問題FAQ
專業知識
疾病標準指南
醫學英語
醫學統計與圖表製作技巧
研究動態與學術教育
SCI論文寫作與基金申請
研究動態
Newsletter
當前位置:首 頁 >> 新聞中心: COX模型及預測列線圖在R軟件中的實現

COX模型及預測列線圖在R軟件中的實現

添加時間:2015-9-26

Cox比例風險模型能處理不同生存時間分布的刪失數據,自1972年提出以來,在生存分析領域得到了廣泛的應用。 

應用Cox比例風險模型進行影響因素分析時,研究者往往用風險函數比(HazardRatio,HR)來表達模型結果,反映各因 素對生存概率的影響[1],但有時絕對概率水平也具有較大的 應用價值。國外很多研究者在Cox模型基礎上建立了不同癌 症的生存概率列線圖,可根據個體的各因素取值水平直接進 行個體化預測,但列線圖法表達生存概率在國內鮮見報道。

R 是一種開源、免費的統計軟件,為用戶提供彈性的、互動的環 境來分析及展示數據,R提供很多的擴展統計程序包可以實 現常規統計軟件無法實現的前沿方法,並具有豐富的繪圖功 能,提供較為詳細的PDF格式幫助文件[2],越來越受到統計 分析工作者的青睞。本研究以SPSS軟件自帶的數據為例,介 紹了Cox回歸模型及列線圖在R軟件中的實現步驟,為研究 者提供生存分析的方法學參考。
 
1理論與方法 

1.1Cox比例風險模型及在R中的實現 

Cox比例風險模型是半參數模型中最常用的一種方法, Cox模型用風險函數反映協變量對生存期的影響,能夠解決 截尾數據的問題,並且可以同時分析多因素對生存期的影響。 現假定有n個觀測,對每個觀測i得到觀測值(t,δi,Xi),其 中,ti為生存時間;δi為截尾指示變量,對截尾觀測δi=0,對 非截尾觀測δi=1;Xi=(xi1,xi2,xip)為p維行向量,表示第i 觀測的第p個協變量。Cox比例風險函數[1]的一般形式為: h(t,X)=h0(t)exp(βX)(1) 式中,X=(x1,x2,…,xp)T表示p維協變量向量,β=(β1, β2,…,βp)表示回歸係數向量,h0(t)為基準風險函數,則第i 個個體的風險率為: h(t,Xi)=h0(t)exp(βXi)(2) R軟件及其擴展程序包可在其官方網站 http://www.r- project.org下載。

其中,R軟件擬合Cox比例風險模型需要 安裝“survival”包,安裝後,通過命令:library(survival)加載。 進行Cox回歸分析時調用其中的“coxph”函數:coxph(),並可通過“step”函數實現逐步回歸。 1.2預測列線圖及在R中的實現 擬合回歸模型基礎上,可通過列線圖進行預測。列線 圖[3]基本原理是根據回歸模型中各影響因素對應變量的貢獻 度情況,給出各影響因素的影響評分,再計算某個體的總評 分,由此得到個體的預測值。例如,根據生存分析Cox回歸模 型的結果繪製列線圖,以具體個體的各因素取值水平預測個 體的生存概率。在R軟件中需要裝載“design”擴展包:library (design),然後調用其中的“nomogram”函數:nomogram()。 

2實例分析 

2.1數據資料簡介 

SPSS中的原始Breastcancersurviva1.sav數據文件,包 含1207例乳腺癌患者的生存狀態、生存時間及相關影響因素 信息。若按照默認路徑安裝SPSS軟件,則Breastcancersur- viva1.sav數據文件的調用路徑為C:/ProgramFiles/SPSS/ Breastcancersurvival.sav。數據中包含10個變量:age,path- size,lnpos,histgard,er,pr,pathscat,ln_yesno,status,time。其中,pathscat和ln_yesno分別是由連續型變量pathsize和ln- pos轉化為分類變量而得,由於連續型變量的效應可能並非線 性,本文實例分析旨在介紹列線圖法的應用,在此不加以探 討,隻應用其中的分類變量形式pathscat和ln_yesno。同樣道 理,將age變量轉換為6分類變量進行分析。本文納入分析的 8個變量具體情況詳見表1所示。



2.2統計分析步驟 

本文僅以此數據為例介紹列線圖法進行生存概率預測的 方法,隻選擇數據文件中協變量不存在缺失值的數據,共660 例患者數據進入分析。 

首先讀入SPSS格式的數據文件,根據SPSS中Breast cancersurviva1.sav數據文件編輯後數據為breastcancer.sav, 存於E盤下。R中欲讀入其他格式數據,需加載foreign包:li- brary(foreign),然後根據保存路徑,在R中輸入命令讀入數據: 
bc<-read.spss('E:/breastcancer.sav',use.value.labels =T,to.data.frame=T) 

將數據讀入後,用Cox比例風險模型進行影響因素分析, R中輸入命令: 
library(survival) 
coxm<-cph(Surv(time,status)~agec+histgrad+er +pr+pathscat+lnyesno,x=T,y=T,data=bc,surv=T) 
scoxm<-step(coxm) 

通過以上步驟產生模型對象“coxm”,並進行逐步Cox回歸分析產生模型對象“scoxm”,然後根據此模型繪製生存概率預測列線圖,輸入命令: 
library(design) 
dd<-datadist(bc) 
options(datadist="dd") 
surv<-survival(scoxm) 
surv1<-function(x)surv(3*12,lp=x) 
surv2<-function(x)surv(5*12,lp=x) 
surv3<-function(x)surv(10*12,lp=x) 
nomogram(scoxm,fun=list(surv1,surv2,surv3),lp= F,funlabel=c('3-yearsurvival','5-yearsurvival','10-year survival'),maxscale=10,fun.at=c(0.95,0.9,0.85,0.8, 0.75,0.7,0.6,0.5)) 

通過以上分析得到Cox模型及模型中選入變量的回歸係 數等信息,並繪製列線圖分別預測乳腺癌患者3年、5年和10 年的生存概率。

結果 
3.1Cox比例風險模型分析結果 

R軟件包中的step()函數以計算AIC信息統計量為準則 (AkaikeInformationCriterion,赤池信息準則),選取AIC信息 統計量最小的模型為最終模型,本案例分析中最終模型選入4 個變量:agec,pr,pathscat和ln_yesno,結果詳見表2所示。



3.2生存概率預測列線圖表達 

在Cox比例風險模型基礎上繪製的列線圖見圖1所示, 圖中給出了各變量不同取值對應的評分(Points),據此計算個 體總評分(TotalPoints),從而得到個體的3年、5年和10年生 存概率。例如,現有1乳腺癌患者各變量取值及列線圖的相 應評分情況見表3所示。


由列線圖計算該乳腺癌患者的總評分為5+0+10+5.5 =20.5分,據圖1可預測該患者的3年生存概率約為86%,5 年生存概率約為68%,10年生存概率約為56%。


討論

本文在R軟件中進行Cox回歸分析並繪製列線圖預測生存概率,方法靈活、方便,相對風險與絕對生存概率列線圖結 合表達結果,更加形象、直觀。繪製生存概率列線圖,可具體 根據隨訪時間及研究對象結局出現情況,設置需要預測的時 間和需要列出的概率範圍。列線圖中各變量對應的線段長度 可反映預測因素對結局的貢獻大小。在通過相對風險比了解 各因素影響的基礎上,個體可根據因素的水平查詢具體的生 存概率,便於引起他們對健康狀況的重視。生存概率預測列線圖在R軟件中可以方便地繪製,可成為模型預測中的有力工具,希望能夠為相關研究者提供參考。本文僅對相關的函數調用及繪圖功能作簡要的說明,涉及更多的選項請參照R 的幫助文檔。

醫學統計與圖表製作技巧相關的新聞


臨床研究學院課程推薦2:臨床醫學統計課程
臨床研究學院課程推薦4:SCI發表支持課程
臨床研究學院課程推薦3:SCI論文寫作指導課程
核查知情同意書的十個點
跟我一起從零學習stata統計軟件,從此統計不求人
臨床醫生為什麼要用數據庫開展臨床研究?
論文數據要慎用條圖
SparkR:數據科學家的新利器
大數據分類利器---支持向量機(SVM)入門介紹
web对话
live chat