我有一个后勤存储模型。我想从公式中删除一个变量,而不再运行模型(我想保留其余的系数)。
我的模特:
> class(lr)
[1] "glm" "lm"
公式是:
> lr$formula
target ~ grupoAntig + nu_seguros_1TRUNC + cd_sexo + grupoEdad +
vl_limite_aeQU + vl_ltd_6QU + Revolv3 + nu_servicios_1TRUNC +
fl_cliente_hit + nu_resumen_6 + fl_rv
我想删除fl_cliente_hit。
我做了:
a<-strsplit(as.character(lr$formula)[3], "+ ")
a<-a[[1]][a[[1]]!=a[[1]][17]]
a<-a[a!=a[16]]
a0<-paste(a, collapse = ' + ')
lr$formula<-as.formula(paste0("target ~ ",a0))
我得到了所需的公式:
> lr$formula
target ~ grupoAntig + nu_seguros_1TRUNC + cd_sexo + grupoEdad +
vl_limite_aeQU + vl_ltd_6QU + Revolv3 + nu_servicios_1TRUNC +
nu_resumen_6 + fl_rv
但是如果模型使用新公式或前一个公式,我不确定是否运行预测函数。在这种情况下:
predict(lr, train, type=c("response"))
如果保留原始模型,必须有一种方法可以排除一个变量,保持其余变量相等。我怎么能这样做?