小编Ana*_*and的帖子

将变量向量传递给lm()公式

我试图自动化一段代码,以便编程变得不那么乏味.

基本上我试图fastbw()rms包中逐步选择变量.我想将选择的变量列表传递fastbw()给公式y ~ x1+x2+x3,"x1""x2""x3"是由所选的变量列表fastbw()

这是我尝试过但没有用的代码

olsOAW0.r060 <- ols(roll_pct~byoy+trans_YoY+change18m, 
                    subset= helper=="POPNOAW0_r060", 
                    na.action = na.exclude, 
                    data = modelready)

OAW0 <- fastbw(olsOAW0.r060, rule="p", type="residual", sls= 0.05)

vec <- as.vector(OAW0$names.kept, mode="any")

b <- paste(vec, sep ="+") ##I even tried b <- paste(OAW0$names.kept, sep="+")

bestp.OAW0.r060 <- lm(roll_pct ~ b , 
                      data = modelready, 
                      subset = helper =="POPNOAW0_r060",    
                      na.action = na.exclude)
Run Code Online (Sandbox Code Playgroud)

我是R的新手,仍然没有落后于陡峭的学习曲线,所以为明显的编程错误道歉.

r paste lm

43
推荐指数
3
解决办法
4万
查看次数

我们如何将两种不同线性模型的预测变量合二为一?

我试图自动化最后一步模型构建.我想将两个独立模型的预测变量组合成一个最终模型.我玩过,update.formula()但意识到我可以将旧的lmfit $调用更新为新的,例如update.formula(lmfit$call,lmfitnew$call).在这里,我需要从两个模型中挑选变量并运行最后一个

lmfit1 <- lm(y~ x1+x2+x3, data = modelready)
best.ngc_fit <- stepAIC(lmfit1, direction="backward")
best.ngc_fit$call

lm(formula = y~ x2+x3, data = modelready)

lmfit2 <- lm(y ~ a+b+c+d+f, data=fcstmodel)
best.fcst_fit <- stepAIC(lmfit2, direction ="backward")
best.fcst_fit$call

lm(formula = y~ a+c+d+f, data = fcstmodel)
Run Code Online (Sandbox Code Playgroud)

这是我想在最终模型中使用的内容

best.full_fit <- lm(y~x2+x3+a+c+d+f, data = fullmodel) 
Run Code Online (Sandbox Code Playgroud)

我可以手动完成而没有任何问题,但我想自动化它,以使整个过程不那么繁琐.

任何帮助都感激不尽

statistics r

5
推荐指数
2
解决办法
3309
查看次数

标签 统计

r ×2

lm ×1

paste ×1

statistics ×1