标签: poly

为什么带有子集参数的 lm() 给出的答案与提前子集化给出的答案不同?

我正在使用lm()包含多项式的训练数据集。当我提前进行子集化时,与在函数调用中[ ]使用参数相比,我得到了不同的系数。为什么?subsetlm()

library(ISLR2)

set.seed (1)
train <- sample(392, 196)

auto_train <- Auto[train,]


lm.fit.data <- lm(mpg ~ poly(horsepower, 2), data = auto_train)
summary(lm.fit.data)
#> 
#> Call:
#> lm(formula = mpg ~ poly(horsepower, 2), data = auto_train)
#> 
#> Residuals:
#>      Min       1Q   Median       3Q      Max 
#> -12.8711  -2.6655  -0.0096   2.0806  16.1063 
#> 
#> Coefficients:
#>                      Estimate Std. Error t value Pr(>|t|)    
#> (Intercept)           23.8745     0.3171  75.298  < 2e-16 ***
#> poly(horsepower, 2)1 -89.3337     4.4389 -20.125 …
Run Code Online (Sandbox Code Playgroud)

r lm poly

5
推荐指数
1
解决办法
296
查看次数

dplyr:使用多边形函数生成多项式系数

我想将多项式系数附加到data.frame,如下所示:

df1 <- 
  structure(list(
    Y = c(4, 4, 4, 4, 4, 8, 8, 8, 8, 8, 16, 16, 16, 
          16, 16, 32, 32, 32, 32, 32, 4, 4, 4, 4, 4, 8, 8, 8, 8, 8, 16, 
          16, 16, 16, 16, 32, 32, 32, 32, 32, 4, 4, 4, 4, 4, 8, 8, 8, 8, 
          8, 16, 16, 16, 16, 16, 32, 32, 32, 32, 32)), 
    class = "data.frame", row.names = c(NA, -60L))

library(tidyverse)
df1 %>%
  dplyr::mutate(
    Linear    = poly(x …
Run Code Online (Sandbox Code Playgroud)

r dplyr tidyverse poly

3
推荐指数
1
解决办法
194
查看次数

标签 统计

poly ×2

r ×2

dplyr ×1

lm ×1

tidyverse ×1