当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


R broom augment.gam 使用来自 gam 对象的信息增强数据


Augment 接受模型对象和数据集,并添加有关数据集中每个观察值的信息。最常见的是,这包括 .fitted 列中的预测值、.resid 列中的残差以及 .se.fit 列中拟合值的标准误差。新列始终以 . 前缀开头,以避免覆盖原始数据集中的列。

用户可以通过 data 参数或 newdata 参数传递数据以进行增强。如果用户将数据传递给 data 参数,则它必须正是用于拟合模型对象的数据。将数据集传递给 newdata 以扩充模型拟合期间未使用的数据。这仍然要求至少存在用于拟合模型的所有预测变量列。如果用于拟合模型的原始结果变量未包含在 newdata 中,则输出中不会包含 .resid 列。

根据是否给出 datanewdata,增强的行为通常会有所不同。这是因为通常存在与训练观察(例如影响或相关)测量相关的信息,而这些信息对于新观察没有有意义的定义。

为了方便起见,许多增强方法提供默认的 data 参数,以便 augment(fit) 将返回增强的训练数据。在这些情况下,augment 尝试根据模型对象重建原始数据,并取得了不同程度的成功。

增强数据集始终以 tibble::tibble 形式返回,其行数与传递的数据集相同。这意味着传递的数据必须可强制转换为 tibble。如果预测变量将模型作为协变量矩阵的一部分输入,例如当模型公式使用 splines::ns()stats::poly()survival::Surv() 时,它会表示为矩阵列。

我们正在定义适合各种 na.action 参数的模型的行为,但目前不保证数据丢失时的行为。

用法

# S3 method for gam
augment(
  x,
  data = model.frame(x),
  newdata = NULL,
  type.predict,
  type.residuals,
  ...
)

参数

x

从调用 mgcv::gam() 返回的 gam 对象。

data

base::data.frametibble::tibble() 包含用于生成对象 x 的原始数据。默认为stats::model.frame(x),以便augment(my_fit) 返回增强的原始数据。不要将新数据传递给 data 参数。增强将报告传递给 data 参数的数据的影响和烹饪距离等信息。这些度量仅针对原始训练数据定义。

newdata

base::data.frame()tibble::tibble() 包含用于创建 x 的所有原始预测变量。默认为 NULL ,表示没有任何内容传递给 newdata 。如果指定了newdata,则data 参数将被忽略。

type.predict

指示要使用的预测类型的字符。传递给 stats::predict() 泛型的 type 参数。允许的参数因模型类而异,因此请务必阅读predict.my_class 文档。

type.residuals

指示要使用的残差类型的字符。传递给 stats::residuals() 泛型的 type 参数。允许的参数因模型类而异,因此请务必阅读residuals.my_class 文档。

...

附加参数。不曾用过。仅需要匹配通用签名。注意:拼写错误的参数将被吸收到 ... 中,并被忽略。如果拼写错误的参数有默认值,则将使用默认值。例如,如果您传递 conf.lvel = 0.9 ,所有计算将使用 conf.level = 0.95 进行。这里有两个异常:

  • tidy() 方法在提供 exponentiate 参数时会发出警告(如果该参数将被忽略)。

  • augment() 方法在提供 newdata 参数时会发出警告(如果该参数将被忽略)。

细节

有关库克距离的更多详细信息,请参阅 stats::cooks.distance()

也可以看看

带有列的 tibble::tibble()

.cooksd

厨师距离。

.fitted

拟合值或预测值。

.hat

帽子矩阵的对角线。

.resid

观察值和拟合值之间的差异。

.se.fit

拟合值的标准误差。

.sigma

从模型中删除相应观测值时的估计残差标准差。

例子


# load libraries for models and data
library(mgcv)
#> Loading required package: nlme
#> 
#> Attaching package: ‘nlme’
#> The following object is masked from ‘package:dplyr’:
#> 
#>     collapse
#> This is mgcv 1.8-42. For overview type 'help("mgcv-package")'.
#> 
#> Attaching package: ‘mgcv’
#> The following object is masked from ‘package:mclust’:
#> 
#>     mvn

# fit model
g <- gam(mpg ~ s(hp) + am + qsec, data = mtcars)

# summarize model fit with tidiers
tidy(g)
#> # A tibble: 1 × 5
#>   term    edf ref.df statistic p.value
#>   <chr> <dbl>  <dbl>     <dbl>   <dbl>
#> 1 s(hp)  2.36   3.02      6.34 0.00218
tidy(g, parametric = TRUE)
#> # A tibble: 3 × 5
#>   term        estimate std.error statistic p.value
#>   <chr>          <dbl>     <dbl>     <dbl>   <dbl>
#> 1 (Intercept)  16.7        9.83      1.70  0.101  
#> 2 am            4.37       1.56      2.81  0.00918
#> 3 qsec          0.0904     0.525     0.172 0.865  
glance(g)
#> # A tibble: 1 × 7
#>      df logLik   AIC   BIC deviance df.residual  nobs
#>   <dbl>  <dbl> <dbl> <dbl>    <dbl>       <dbl> <int>
#> 1  5.36  -74.4  162.  171.     196.        26.6    32
augment(g)
#> # A tibble: 32 × 11
#>    .rownames    mpg    am  qsec    hp .fitted .se.fit .resid   .hat .sigma
#>    <chr>      <dbl> <dbl> <dbl> <dbl>   <dbl>   <dbl>  <dbl>  <dbl> <lgl> 
#>  1 Mazda RX4   21       1  16.5   110    24.3   1.03  -3.25  0.145  NA    
#>  2 Mazda RX4…  21       1  17.0   110    24.3   0.925 -3.30  0.116  NA    
#>  3 Datsun 710  22.8     1  18.6    93    26.0   0.894 -3.22  0.109  NA    
#>  4 Hornet 4 …  21.4     0  19.4   110    20.2   0.827  1.25  0.0930 NA    
#>  5 Hornet Sp…  18.7     0  17.0   175    15.7   0.815  3.02  0.0902 NA    
#>  6 Valiant     18.1     0  20.2   105    20.7   0.914 -2.56  0.113  NA    
#>  7 Duster 360  14.3     0  15.8   245    12.7   1.11   1.63  0.167  NA    
#>  8 Merc 240D   24.4     0  20      62    25.0   1.45  -0.618 0.287  NA    
#>  9 Merc 230    22.8     0  22.9    95    21.8   1.81   0.959 0.446  NA    
#> 10 Merc 280    19.2     0  18.3   123    19.0   0.864  0.211 0.102  NA    
#> # ℹ 22 more rows
#> # ℹ 1 more variable: .cooksd <dbl>
源代码:R/mgcv-tidiers.R

相关用法


注:本文由纯净天空筛选整理自大神的英文原创作品 Augment data with information from a(n) gam object。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。