在R中的lm之前从公式中删除Inf值


晴天3
2025-03-13 01:49:55 (8天前)


假设我使用mtcars数据集来设置任意公式:

数据(mtcars)

myFormula< - as.formula(“mpg~cyl + I(disp / hp)+ I(wt ^ 2)+ I((qsec + vs)/ gear)”)
我想用那个公式……

2 条回复
  1. 0# 无思 | 2019-08-31 10-32



    您可以从正在回归的数据中删除这些值。 Inf将出现在hp == 0或gear == 0的地方。




    1. data(mtcars)

    2. df <- mtcars
      myFormula <- as.formula(“mpg ~ cyl + I(disp / hp) + I(wt^2) + I((qsec + vs) / gear)”)

    3. df <- df[!(df$hp==0 | df$gear==0),]
      lm(myFormula,df)

    4. lm(myFormula,df)

    5. Call:
      lm(formula = myFormula, data = df)

    6. Coefficients:
      (Intercept) cyl I(disp/hp) I(wt^2) I((qsec + vs)/gear)
      35.5847 -1.9639 1.0707 -0.3671 -0.1699

    7. </code>

登录 后才能参与评论