列线图因子名称错误不在设计中:model.type x 时间事件 x.df lambda pred.at

Error in nomogram factor name(s) not in the design: model.type x time event x.df lambda pred.at

我正在使用包 "hdnom" 中的 "smart" 数据集。下面提到的是我的代码。我收到以下错误。请让我知道我哪里出错了。我无法理解错误。

列线图错误(适合,model.type = "aenet",x,时间,事件,x.df,lambda = lambda,: 不在设计中的因素名称:model.type x 时间事件 x.df lambda pred.at

data("smart")
summary(smart)
dim(smart)
x = as.matrix(smart[,-c(1,2)])
str(x)
time = smart$TEVENT
#time <- as.numeric(time)
event = smart$EVENT
library(survival)
y = Surv(time, event)
suppressMessages(library(doParallel))
registerDoParallel(detectCores())
aenetfit = fit_aenet(x, y, nfolds = 10, rule = "lambda.1se",
                       seed = c(5, 7), parallel = TRUE)
names(aenetfit)
fit = aenetfit$model_init
alpha = aenetfit$alpha_init
lambda = aenetfit$lambda_init
adapen = aenetfit$pen_factor
suppressMessages(library("rms"))
x.df = as.data.frame(x)
dd = datadist(x.df)
options(datadist = "dd")
nom = nomogram(fit, model.type = "aenet", x, time, event, x.df,lambda = lambda, pred.at = 365 * 2,funlabel = "2-Year Overall Survival Probability")

hdnom4.05.0 版本中,函数 hdnom.nomogram 可用,如文档 here and here 所述。语法是:

nom <- hdnom.nomogram(fit, model.type = "aenet", x, time, event, x.df, 
       lambda = lambda, pred.at = 365 * 2,
       funlabel = "2-Year Overall Survival Probability")

在版本 6.0 中,此功能已被 hdnom::as_nomogram 取代:

nom <- as_nomogram(aenetfit, x, time, event, pred.at = 365 * 2,
                   funlabel = "2-Year Overall Survival Probability")
plot(nom)

rms::nomogram 的帮助下:此函数仅接受使用 rms 创建的回归模型作为输入(fit 参数);此外,model.typelambda 不是此函数的有效参数。