我有一个(线性)回归模型,我很满意。但是,我想自动为预测变量添加一些变换,并根据调整后的R ^ 2自动选择具有变换变量的最佳模型。
是否有类似于step
和leap
的功能会执行此操作?以下是使用内置state.x77
数据集的示例:
st = as.data.frame(state.x77)
names(st)[c(4,6)] <- c("Life.Exp","HS.Grad")
fm = lm(formula = Life.Exp ~ Murder + HS.Grad + Frost, data = st)
transformations = list(function(x) sqrt(x), function(x) log(x))
现在我想以逐步的方式考虑模型fm
中预测变量的所有变换,并选择最佳模型。例如。例如在第一次交互中,比较
fm_sqrt_1 = lm(formula = Life.Exp ~ sqrt(Murder) + HS.Grad + Frost, data = st)
要 fm_log_1 = lm(公式= Life.Exp~log(谋杀)+ HS.Grad + Frost,data = st) 至 fm_sqrt_2 = lm(公式= Life.Exp~谋杀+ sqrt(HS.Grad)+ Frost,data = st) 至 fm_log_2 = lm(公式= Life.Exp~谋杀+日志(HS.Grad)+ Frost,data = st) 至 ...
从中选择最佳模型,然后再次对迭代2进行相同的操作。