Augment 接受模型对象和数据集,并添加有关数据集中每个观察值的信息。最常见的是,这包括 .fitted
列中的预测值、.resid
列中的残差以及 .se.fit
列中拟合值的标准误差。新列始终以 .
前缀开头,以避免覆盖原始数据集中的列。
用户可以通过 data
参数或 newdata
参数传递数据以进行增强。如果用户将数据传递给 data
参数,则它必须正是用于拟合模型对象的数据。将数据集传递给 newdata
以扩充模型拟合期间未使用的数据。这仍然要求至少存在用于拟合模型的所有预测变量列。如果用于拟合模型的原始结果变量未包含在 newdata
中,则输出中不会包含 .resid
列。
根据是否给出 data
或 newdata
,增强的行为通常会有所不同。这是因为通常存在与训练观察(例如影响或相关)测量相关的信息,而这些信息对于新观察没有有意义的定义。
为了方便起见,许多增强方法提供默认的 data
参数,以便 augment(fit)
将返回增强的训练数据。在这些情况下,augment 尝试根据模型对象重建原始数据,并取得了不同程度的成功。
增强数据集始终以 tibble::tibble 形式返回,其行数与传递的数据集相同。这意味着传递的数据必须可强制转换为 tibble。如果预测变量将模型作为协变量矩阵的一部分输入,例如当模型公式使用 splines::ns()
、 stats::poly()
或 survival::Surv()
时,它会表示为矩阵列。
我们正在定义适合各种 na.action
参数的模型的行为,但目前不保证数据丢失时的行为。
参数
- x
-
plm::plm()
返回的plm
对象。 - data
-
base::data.frame 或
tibble::tibble()
包含用于生成对象x
的原始数据。默认为stats::model.frame(x)
,以便augment(my_fit)
返回增强的原始数据。不要将新数据传递给data
参数。增强将报告传递给data
参数的数据的影响和烹饪距离等信息。这些度量仅针对原始训练数据定义。 - ...
-
附加参数。不曾用过。仅需要匹配通用签名。注意:拼写错误的参数将被吸收到
...
中,并被忽略。如果拼写错误的参数有默认值,则将使用默认值。例如,如果您传递conf.lvel = 0.9
,所有计算将使用conf.level = 0.95
进行。这里有两个异常:
也可以看看
其他 plm 整理器:glance.plm()
、tidy.plm()
例子
# load libraries for models and data
library(plm)
#>
#> Attaching package: ‘plm’
#> The following object is masked from ‘package:mlogit’:
#>
#> has.intercept
#> The following object is masked from ‘package:lfe’:
#>
#> sargan
#> The following objects are masked from ‘package:dplyr’:
#>
#> between, lag, lead
# load data
data("Produc", package = "plm")
# fit model
zz <- plm(log(gsp) ~ log(pcap) + log(pc) + log(emp) + unemp,
data = Produc, index = c("state", "year")
)
# summarize model fit with tidiers
summary(zz)
#> Oneway (individual) effect Within Model
#>
#> Call:
#> plm(formula = log(gsp) ~ log(pcap) + log(pc) + log(emp) + unemp,
#> data = Produc, index = c("state", "year"))
#>
#> Balanced Panel: n = 48, T = 17, N = 816
#>
#> Residuals:
#> Min. 1st Qu. Median 3rd Qu. Max.
#> -0.120456 -0.023741 -0.002041 0.018144 0.174718
#>
#> Coefficients:
#> Estimate Std. Error t-value Pr(>|t|)
#> log(pcap) -0.02614965 0.02900158 -0.9017 0.3675
#> log(pc) 0.29200693 0.02511967 11.6246 < 2.2e-16 ***
#> log(emp) 0.76815947 0.03009174 25.5273 < 2.2e-16 ***
#> unemp -0.00529774 0.00098873 -5.3582 1.114e-07 ***
#> ---
#> Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
#>
#> Total Sum of Squares: 18.941
#> Residual Sum of Squares: 1.1112
#> R-Squared: 0.94134
#> Adj. R-Squared: 0.93742
#> F-statistic: 3064.81 on 4 and 764 DF, p-value: < 2.22e-16
tidy(zz)
#> # A tibble: 4 × 5
#> term estimate std.error statistic p.value
#> <chr> <dbl> <dbl> <dbl> <dbl>
#> 1 log(pcap) -0.0261 0.0290 -0.902 3.68e- 1
#> 2 log(pc) 0.292 0.0251 11.6 7.08e- 29
#> 3 log(emp) 0.768 0.0301 25.5 2.02e-104
#> 4 unemp -0.00530 0.000989 -5.36 1.11e- 7
tidy(zz, conf.int = TRUE)
#> # A tibble: 4 × 7
#> term estimate std.error statistic p.value conf.low conf.high
#> <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
#> 1 log(pcap) -0.0261 0.0290 -0.902 3.68e- 1 -0.0830 0.0307
#> 2 log(pc) 0.292 0.0251 11.6 7.08e- 29 0.243 0.341
#> 3 log(emp) 0.768 0.0301 25.5 2.02e-104 0.709 0.827
#> 4 unemp -0.00530 0.000989 -5.36 1.11e- 7 -0.00724 -0.00336
tidy(zz, conf.int = TRUE, conf.level = 0.9)
#> # A tibble: 4 × 7
#> term estimate std.error statistic p.value conf.low conf.high
#> <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
#> 1 log(pcap) -0.0261 0.0290 -0.902 3.68e- 1 -0.0739 0.0216
#> 2 log(pc) 0.292 0.0251 11.6 7.08e- 29 0.251 0.333
#> 3 log(emp) 0.768 0.0301 25.5 2.02e-104 0.719 0.818
#> 4 unemp -0.00530 0.000989 -5.36 1.11e- 7 -0.00692 -0.00367
augment(zz)
#> # A tibble: 816 × 7
#> `log(gsp)` `log(pcap)` `log(pc)` `log(emp)` unemp .fitted .resid
#> <pseries> <pseries> <pseries> <pseries> <pser> <dbl> <pseries>
#> 1 10.25478 9.617981 10.48553 6.918201 4.7 10.3 -0.046561413
#> 2 10.28790 9.648720 10.52675 6.929419 5.2 10.3 -0.030640422
#> 3 10.35147 9.678618 10.56283 6.977561 4.7 10.4 -0.016454312
#> 4 10.41721 9.705418 10.59873 7.034828 3.9 10.4 -0.008726974
#> 5 10.42671 9.726910 10.64679 7.064588 5.5 10.5 -0.027084312
#> 6 10.42240 9.759401 10.69130 7.052202 7.7 10.4 -0.022368930
#> 7 10.48470 9.783175 10.82420 7.095893 6.8 10.5 -0.036587629
#> 8 10.53111 9.804326 10.84125 7.146142 7.4 10.6 -0.030020604
#> 9 10.59573 9.824430 10.87055 7.197810 6.3 10.6 -0.018942497
#> 10 10.62082 9.845937 10.90643 7.216709 7.1 10.6 -0.014057170
#> # ℹ 806 more rows
glance(zz)
#> # A tibble: 1 × 7
#> r.squared adj.r.squared statistic p.value deviance df.residual nobs
#> <dbl> <dbl> <dbl> <dbl> <dbl> <int> <int>
#> 1 0.941 0.937 3065. 0 1.11 764 816
相关用法
- R broom augment.poLCA 使用来自 poLCA 对象的信息增强数据
- R broom augment.polr 使用来自 (n) 个 polr 对象的信息增强数据
- R broom augment.pam 使用来自 pam 对象的信息增强数据
- R broom augment.betamfx 使用来自 betamfx 对象的信息增强数据
- R broom augment.robustbase.glmrob 使用来自 glmrob 对象的信息增强数据
- R broom augment.rlm 使用来自 rlm 对象的信息增强数据
- R broom augment.htest 使用来自(n)个 htest 对象的信息来增强数据
- R broom augment.clm 使用来自 clm 对象的信息增强数据
- R broom augment.speedlm 使用来自 speedlm 对象的信息增强数据
- R broom augment.felm 使用来自 (n) 个 felm 对象的信息来增强数据
- R broom augment.smooth.spline 整理一个(n)smooth.spline对象
- R broom augment.drc 使用来自 a(n) drc 对象的信息增强数据
- R broom augment.decomposed.ts 使用来自 decomposed.ts 对象的信息增强数据
- R broom augment.lm 使用来自 (n) lm 对象的信息增强数据
- R broom augment.rqs 使用来自 (n) 个 rqs 对象的信息来增强数据
- R broom augment.nls 使用来自 nls 对象的信息增强数据
- R broom augment.gam 使用来自 gam 对象的信息增强数据
- R broom augment.fixest 使用来自(n)个最固定对象的信息来增强数据
- R broom augment.survreg 使用来自 survreg 对象的信息增强数据
- R broom augment.rq 使用来自 a(n) rq 对象的信息增强数据
- R broom augment.Mclust 使用来自 Mclust 对象的信息增强数据
- R broom augment.nlrq 整理 a(n) nlrq 对象
- R broom augment.robustbase.lmrob 使用来自 lmrob 对象的信息增强数据
- R broom augment.lmRob 使用来自 lmRob 对象的信息增强数据
- R broom augment.mlogit 使用来自 mlogit 对象的信息增强数据
注:本文由纯净天空筛选整理自等大神的英文原创作品 Augment data with information from a(n) plm object。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。