首页 > 解决方案 > cox 回归的列线图

问题描述

我正在尝试为 cox 回归创建列线图,但是当我运行该函数时nomogram (nom=nomogram(f, fun=surv2y, funlabel=funlabels, fun.at=ss,lp=F))

它返回错误:

predictrms 中的错误(fit, newdata = xadj, type = "terms", center.terms = FALSE, :type="terms" 除非存在协变量,否则可能不会给出

以上遵循我的代码。

有人可以帮助我吗?

ddist <- datadist(subgrupo_molecular_nova,idade_diag_cat,v35_metastase,v40_1_cirurgia_1,v70_quimio_1,dose_cat_neroeixo)
options(datadist='ddist')

names=c("Pontos", "Subgrupo Molecular","Idade","Metastase","Cirurgia HCB", "QT", "Dose Neroeixo", "Total de Pontos", "p")

ajuste_1<-coxph(Surv(as.numeric(tempo_SG),status)~subgrupo_molecular_nova+idade_diag_cat+v35_metastase+v40_1_cirurgia_1+v70_quimio_1+dose_cat_neroeixo,data=tabela,x=T,method="breslow")


phmodel=cph(Surv(as.numeric(tempo_SG),status)~strat(subgrupo_molecular_nova)+strat(idade_diag_cat)+strat(v35_metastase)+strat(v40_1_cirurgia_1)+strat(v70_quimio_1)+strat(dose_cat_neroeixo),data=tabela,debug=T,x=T,y=T,surv=T,se.fit=T,time.inc=24)


surv=Survival(phmodel)
surv2y=list(function(x)surv(12,lp=x),function(x)surv(36,lp=x),function(x)surv(60,lp=x))
ss=list(c(0.01,0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,0.95,0.99),c(0.01,0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,0.95,0.99),c(0.01,0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,0.95,0.99))

f <- Newlabels(phmodel, c(subgrupo_molecular_nova = "Subgrupo Molecular",idade_diag_cat = "Idade",v35_metastase = "Metastase",v40_1_cirurgia_1 = "Cirurgia HCB",v70_quimio_1 = "QT",dose_cat_neroeixo="Dose Neroeixo"))

funlabels <- c("Prob. Sob. 1 ano","Prob. Sob. 3 anos", "Prob. Sob. 5 anos")

nom=nomogram(f, fun=surv2y, funlabel=funlabels, fun.at=ss,lp=F)

plot(nom,lplabel="Preditor linear", points.label='Pontos', total.points.label='Pontuacao total')
print(nom)

predictrms 中的错误(fit, newdata = xadj, type = "terms", center.terms = FALSE, :type="terms" 除非存在协变量,否则可能不会给出

标签: r

解决方案


推荐阅读