日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

语言nomogram校准曲线图_R语言实现Cox模型校准度曲线绘制

發布時間:2023/12/10 编程问答 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 语言nomogram校准曲线图_R语言实现Cox模型校准度曲线绘制 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

01

研究背景

? ? ? ?這是關于cox模型的第二篇文章,上一篇文章分享了運用Lasso回歸如何篩選變量,將篩選后的變量繪制Nomogram圖,本章分享構建模型后,如何繪制校準曲線。

? ? ? cox模型的驗證不同于Logistic回歸,cox的結局包括時間和狀態,所以對于某個患者來說,他的結果是否準確,就要看模型在他隨訪的時間點,所預測的結局是否和真實的狀態一致,兩者一致說明擬合不錯,模型準確。雖然大部分患者的患者的隨訪時間都不一樣,但對于生存分析來說,我們更關注一段時間在群體中的效應,比如1年生存率、3年生存率和5年生存率,以及中位生存率。換句話說,在評價手術后或者藥物治療后的效果時,更關注某一段時間后的平均療效。

02

案例研究

? ? ? ?本文數據采用R自帶的lung數據集,一個晚期肺癌數據集,收集了228例癌癥患者的生存資料,包含患者年齡、性別、生存時間、生存狀態等10個變量。本文利用年齡、性別和ecog評分三個變量構建模型,繪制列線圖并繪制指定時間點的校準曲線。

臨床研究一般有提供多個危險因素,首先做單因素的篩選,具體篩選方法,見公眾號之前的文章。詳細Nomogram圖繪制見之前文章,本章詳細說明校準曲線的繪制和參數說明,采用驗證的方法是基于原始數據集的重抽樣驗證。

03

R代碼及解讀

##加載包?明確每個包的作用library(rms) ##繪制列線圖library(survival)??##生存分析包##調用數據,數據格式與普通的spss中格式一樣,一行代表一條觀測, ##一列代表一個變量;data(lung)d str(d)aggr(d,prop=T,numbers=T) #判斷數據缺失情況,紅色表示有缺失。d ?str(dt)??##查看每個變量結構?aggr(dt,prop=T,numbers=T) #判斷數據缺失情況,紅色表示有缺失。 d?

? ? ? 由圖片可看到所有變量都為藍色,沒有缺失值,紅色表示有缺失,并展示出缺失比例。如果用na.omit()函數按照行刪除。

? ? ? ? 第一步,數據整理。

###添加變量標簽,在列線圖上展示分類標簽,作圖用到d$sex ##########################################################################d[,6] ##結局變量轉換d$status str(d)##可以查看數據結構

? ? ? ? 第二步:構建模型并繪制列線圖

ddoptions(datadist='dd') #設置工作環境變量,將數據整合##coxm?###繪制cox回歸生存概率的nomogram圖##?構建Nomo圖的對象只能是rms保重d額cph()函數nom???????????????????????????????function(x)surv(2*365,x)),?##算出不同時間節點生存率值,顯示在列線圖上 funlabel = c('1-year probability', '2-year probability'),?????????????????????????????lp=F,????????????????fun.at=c('0.9','0.85','0.80','0.70','0.6','0.5','0.4','0.3','0.2','0.1'))par(mar=c(2,5,3,2),cex=0.8)##mar 圖形空白邊界 cex 文本和符號大小plot(nom,xfrac=0.6)

? ? ? 該圖為1年和2年生存率的列線圖,性別的標簽在圖上展示出來了。接下來分別對1年生存率和2年生存率做驗證曲線。

? ? ? ?第三步:繪制校準曲線

###這里演示,采用age?sex?和ph.ecog?構建coxph模型##構建校準曲線##time.in?和?u?要是一樣的,都是要評價的時間節點coxm_1?cal_1##繪制1年生存期校準曲線par(mar=c(7,4,4,3),cex=1.0)plot(cal_1,lwd=2,lty=1, ##設置線條形狀和尺寸 errbar.col=c(rgb(0,118,192,maxColorValue = 255)), ##設置一個顏色 xlab='Nomogram-Predicted Probability of 1-year DFS',#便簽 ylab='Actual 1-year DFS(proportion)',#標簽 col=c(rgb(192,98,83,maxColorValue = 255)),#設置一個顏色 xlim = c(0,1),ylim = c(0,1)) ##x軸和y軸范圍##繪制2年生存期校曲線##time.in 和 u 要是一樣的,都是要評價的時間節點coxm_2?cal_2plot(cal_2,lwd=2,lty=1,??##設置線條寬度和線條類型 errbar.col=c(rgb(0,118,192,maxColorValue = 255)), ##設置一個顏色 xlab='Nomogram-Predicted Probability of 1-year DFS',#便簽 ylab='Actual 2-year DFS(proportion)',#標簽 col=c(rgb(192,98,83,maxColorValue = 255)),#設置一個顏色 xlim = c(0,1),ylim = c(0,1)) ##x軸和y軸范圍

? ? ? ?繪制校準曲線的參數說明:

? ? 1.繪制校準曲線前需要在模型函數中添加參數x=T,y=T和time.inc 參數

? ? 2.u需要和之前模型中定義好的time.inc一致,根據原數據,要以天為單位

即365或者365*2,u和time.inc其實是一個意思,表示要評價的時間節點。如果它倆不一樣,表示你想要評價的時間點不一樣,矯正的結果當然不同了。time.inc全稱是? ? ? ?time increase 即時間增量。當surv=T時候,表示要計算surv .summary數組,此時time.inc用于計算數組內部不同時間點的數據(seq(0,maxtime,by=time.inc))。評價時間點不能小于最大時間的1/25,也不能超過最大隨訪時間,會超出評價評價限度,不能評價。如果time.inc省略,則會根據時間單位自動選擇,這往往不是我們要的,所以還需要指定值。

? ? 3.m要根據樣本量來確定,由于校準曲線一般將所有的樣本均分為5組(對應圖中的5分節點),而m代表每組樣本量數,因此m*5等于或者近似等于樣本量

? ? 4.b代表最大再抽樣的樣本量,一般b=1000,足夠使用。

? ? 5.由兩個校準圖可看,橫坐標為預測的生存率,縱坐標為實際的生存率,對角線是預測概率等于實際概率,偏離對角線越遠說明預測的誤差越大。以上兩個圖中預測曲線基本和對角線重合,結果還行,這一點也可以通過計算C-index指數看出端倪。

##模型驗證,采用surival包#Concordance indexf?sum.survc_indexc_index## C se(C) ##0.64123438?0.03103835?

? ? ? 該模型的區分度C-index為0.64,其本質同ROC曲線面積。結果顯示,該模型的具有一定區分度。

04

參考文獻

  • 方積乾等. 衛生統計學. 人民衛生出版社。

  • http://www.360doc.com/userhome.aspx?userid=46405145

  • https://www.bilibili.com/read/cv5975714/

  • http://www.360doc.com/content/19/0124/20/52645714_811083591.shtml

  • http://blog.sina.com.cn/s/blog_13ea9a2450102wzf6.html

  • https://blog.csdn.net/fjsd155/article/details/84669331

  • 作者介紹:醫療大數據統計分析師,擅長R語言。

    更多閱讀:

    如何進行高維變量篩選和特征選擇(一)?Lasso回歸

    基于Lasso回歸篩選變量構建Cox模型并繪制Nomogram

    總結

    以上是生活随笔為你收集整理的语言nomogram校准曲线图_R语言实现Cox模型校准度曲线绘制的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。