0

我构建了一个线性回归模型 reg_model1,该模型中包含因子。然而,在模型中的不同组因素中,很少有与其他连续变量一起显着的因素。是否有任何代码可以提供给 reg_model1 以生成仅输出最适合模型的预测变量的摘要?

4

3 回答 3

0

从统计的角度来看,我认为您在影响因变量的自变量和模型的拟合优度之间存在混淆,因此我的建议是确定您想要获得的内容。也就是说,如果您想要一个仅包含一些变量的模型表示,您可以将其转换为具有以下内容的数据框broom::tidy

library(dplyr)
#> 
#> Attaching package: 'dplyr'
#> The following objects are masked from 'package:stats':
#> 
#>     filter, lag
#> The following objects are masked from 'package:base':
#> 
#>     intersect, setdiff, setequal, union
library(broom)

### Create factors ###
mtcars <- mutate(mtcars, across(c(vs, am, gear), as.factor))

lm(mpg ~ disp + vs + am + gear, data=mtcars) |> 
  tidy() |> 
  filter(p.value <= 0.05)
#> # A tibble: 3 × 5
#>   term        estimate std.error statistic      p.value
#>   <chr>          <dbl>     <dbl>     <dbl>        <dbl>
#> 1 (Intercept)  24.7      3.36         7.34 0.0000000865
#> 2 disp         -0.0282   0.00924     -3.05 0.00518     
#> 3 am1           4.67     2.09         2.23 0.0345

reprex 包于 2021-11-20 创建(v2.0.1)

于 2021-11-20T10:37:37.507 回答
0

您可以使用的另一个逐步回归 R 包“StepReg”,

例如,

formula <- mpg ~ .
stepwise(formula=formula,
         data=mtcars,
         include="am",
         selection="bidirection",
         select="SL",
         sle=0.15,
         sls=0.15)
于 2022-01-15T03:57:38.800 回答
0

我建议逐步回归/逐步选择。有了这个,您可以根据 RSME 和拟合优度选择最佳拟合。这是在mtcars数据集上执行的一个很好的来源。还有其他几个包提供几乎相同的东西。我个人更喜欢为此目的使用步进功能。

step.model <- step(lm(mpg ~ ., mtcars), direction="both", trace=FALSE); 
summary(step.model)
于 2021-11-20T11:10:12.210 回答