使用带波浪号和点的 lm 公式时,如何从自变量中排除权重?

问题描述

我有一个回归 lm 公式,不想在 lm 公式中列出变量名称。 因此,我像这样使用波浪号 (~ .):

lm(qsec ~ .,mtcars)

Call:
lm(formula = qsec ~ .,data = mtcars)

Coefficients:
(Intercept)          mpg          cyl         disp           hp         drat           wt           vs           am  
  17.776177     0.069048    -0.362678    -0.007501    -0.001563    -0.131064     1.496332     0.970035    -0.901186  
       gear         carb  
  -0.201285    -0.273598 

但是当我还需要 weights 时,例如使用 'carb',权重变量也用作自变量:

lm(qsec ~ .,mtcars,weights = carb)

Call:
lm(formula = qsec ~ .,data = mtcars,weights = carb)

Coefficients:
(Intercept)          mpg          cyl         disp           hp         drat           wt           vs           am  
  18.914385     0.047175    -0.373792    -0.006538    -0.001695    -0.395044     1.390740     1.123131    -0.511150  
       gear         carb  
  -0.145504    -0.274229 

当然权重不应该用作自变量,而是像这样:

lm(qsec ~ mpg + cyl + disp + hp + drat + wt + vs + am + gear,weights = carb)

Call:
lm(formula = qsec ~ mpg + cyl + disp + hp + drat + wt + vs + 
    am + gear,weights = carb)

Coefficients:
(Intercept)          mpg          cyl         disp           hp         drat           wt           vs           am  
  19.917916     0.064361    -0.436490    -0.002258    -0.006301    -0.427495     1.017749     1.279865    -0.632002  
       gear  
  -0.356196  

如何将波浪号与权重一起使用?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)