? ? 之前做COX模型引入了4(A,B,C,D)個(gè)變量,最后做了一下其中一個(gè)變量(A)的生存曲線,即校正其他三個(gè)變量得到的一個(gè)變量的生存曲線。如圖1

? ? 之后再R中用survminer包的ggadjustedcurves函數(shù)來做
ggadjustedcurves(fit, variable = NULL, data = NULL, reference = NULL,
? method = "conditional", fun = NULL, palette = "hue",
? ylab = "Survival rate", size = 1, ggtheme = theme_survminer(), ...)

結(jié)果如圖二,兩幅圖截然不同。個(gè)人覺得spss分別計(jì)算了每個(gè)樣本在A變量不同情況(A=1,A=2)下的生存概率,因?yàn)閿?shù)了一下spss中兩條線的死亡人數(shù)。然后survminer包的函數(shù)只是給了分層的A=1,A=2的情況下控制其他變量的結(jié)果,所以兩條線不同。還沒想到用R怎么做spss的圖。
? ? 就在剛剛搞出來了~ggadjustedcurves的說明里邊只寫了strata設(shè)置,但是我們的分析并不是分層分析,我在這里糾結(jié)了很久。后來發(fā)現(xiàn)只要把strata去掉就可以,但是兩幅圖不太一樣很接近,生存率還是有差異,這個(gè)沒搞懂是計(jì)算方法還是什么的原因。
? ? 線條形狀大體相同但是最后結(jié)尾的生存率有差異,spss所有的生存率全部以0截止,R按照最長生存時(shí)間的的病例的生存率來算,個(gè)人暫時(shí)覺得R合適點(diǎn)。
2020-5-20
? ? 繼續(xù)搞問題

按照ggsurvplot作圖來看,ggadjustedcurves差一個(gè)風(fēng)險(xiǎn)表。
先看一下ggadjustedcurves中的代碼,作圖的原始數(shù)據(jù)就是surv_adjustedcurves輸出的表格。ggrisktable對(duì)于coxph不能用。

實(shí)話survminer中的所有函數(shù)我沒看完,有沒有做風(fēng)險(xiǎn)表的適不適合ggadjustedcurves我一概不知。按照我的思路ggsurvplot中肯定有risktable的制作相關(guān)內(nèi)容,edit(ggsurvplot)既然要看源代碼,那就把涉及到的東西都解釋一下,ggsurvplot_combine:在同一繪圖上合并多個(gè)survfit對(duì)象。例如,人們可能希望在同一張圖上繪制無進(jìn)展生存率和總生存率(也按治療分配分層)。ggsurvplot_combine()為此提供了對(duì)ggsurvplot()函數(shù)的擴(kuò)展。(貼的不想貼了,后邊和risktable相關(guān)的幾乎就沒有,只有g(shù)gsurvplot_combine能沾上邊)



挖出來ggsurvplot_combine看一下代碼,看看能不能找到和risktable相關(guān)的。其實(shí)ggsurplot_combine中和risktable相關(guān)的東西很多。risktable細(xì)節(jié)設(shè)置應(yīng)該就是在這里,ggsurvplot_combine結(jié)尾的res有圖9部分,所以risktable具體作圖是通過ggsurvtable


ggsurvtable源代碼中的res結(jié)果會(huì)輸出三個(gè)圖,表明都與.plot_survtable相關(guān),但是在代碼里我沒找到.plot_survtable(),去下載了source資源,在ggsurtable包中找到了相關(guān)設(shè)置。

這個(gè)太長了哈哈哈~

下午的時(shí)候不知道為什么我要這么一路跑到黑……
然后打算把ggadjustedcurves中的surv生存率轉(zhuǎn)換成存活人數(shù),然后帶到ggsurvtable中做圖。
5月22日
因?yàn)楹笃陧?xiàng)目比較著急這個(gè)代碼我就放棄了,不繼續(xù)填坑了……用surv_adjustedcurves中的surv計(jì)算了存活人數(shù),用PS做了個(gè)表2小時(shí)搞定了。如果偶遇想做這個(gè)的親可以在.plot_survtable這個(gè)腳本里改改改~