I'm trying to create a nomogram for cox regression, but when I run the function nomogram (nom=nomogram(f, fun=surv2y, funlabel=funlabels, fun.at=ss,lp=F))
,
it returns the error:
Error in predictrms(fit, newdata = xadj, type = "terms", center.terms = FALSE, :type="terms" may not be given unless covariables present
Above follow my code.
Anybody may help me?
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)
Error in predictrms(fit, newdata = xadj, type = "terms", center.terms = FALSE, :type="terms" may not be given unless covariables present