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
参数的模型的行为,但目前不保证数据丢失时的行为。
用法
# S3 method for fixest
augment(
x,
data = NULL,
newdata = NULL,
type.predict = c("link", "response"),
type.residuals = c("response", "deviance", "pearson", "working"),
...
)
参数
- x
-
从任何
fixest
估计器返回的fixest
对象 - data
-
base::data.frame 或
tibble::tibble()
包含用于生成对象x
的原始数据。默认为stats::model.frame(x)
,以便augment(my_fit)
返回增强的原始数据。不要将新数据传递给data
参数。增强将报告传递给data
参数的数据的影响和烹饪距离等信息。这些度量仅针对原始训练数据定义。 - newdata
-
base::data.frame()
或tibble::tibble()
包含用于创建x
的所有原始预测变量。默认为NULL
,表示没有任何内容传递给newdata
。如果指定了newdata
,则data
参数将被忽略。 - type.predict
-
传递给
predict.fixest
type
参数。默认为"link"
(如predict.glm
)。 - type.residuals
-
传递给
predict.fixest
type
参数。默认为"response"
(类似于residuals.lm
,但与residuals.glm
不同)。 - ...
-
传递给
summary
和confint
的其他参数。重要参数是se
和cluster
。其他参数包括dof
、exact_dof
、forceCovariance
和keepBounded
。请参阅summary.fixest
。
注意
重要提示:fixest
模型不包含输入数据的副本,因此您必须手动提供。
augment.fixest 仅适用于 fixest::feols()
、 fixest::feglm()
和 fixest::femlm()
型号。它不适用于 fixest::fenegbin()
、 fixest::feNmlm()
或 fixest::fepois()
的结果。
也可以看看
augment()
, fixest::feglm()
, fixest::femlm()
, fixest::feols()
其他最固定的整理器:tidy.fixest()
例子
# load libraries for models and data
library(fixest)
gravity <-
feols(
log(Euros) ~ log(dist_km) | Origin + Destination + Product + Year, trade
)
tidy(gravity)
#> # A tibble: 1 × 5
#> term estimate std.error statistic p.value
#> <chr> <dbl> <dbl> <dbl> <dbl>
#> 1 log(dist_km) -2.17 0.154 -14.1 0.00000000119
glance(gravity)
#> # A tibble: 1 × 9
#> r.squared adj.r.squared within.r.squared pseudo.r.squared sigma nobs
#> <dbl> <dbl> <dbl> <dbl> <dbl> <int>
#> 1 0.706 0.705 0.219 NA 1.74 38325
#> # ℹ 3 more variables: AIC <dbl>, BIC <dbl>, logLik <dbl>
augment(gravity, trade)
#> # A tibble: 38,325 × 9
#> .rownames Destination Origin Product Year dist_km Euros .fitted
#> <chr> <fct> <fct> <int> <dbl> <dbl> <dbl> <dbl>
#> 1 1 LU BE 1 2007 140. 2966697 14.1
#> 2 2 BE LU 1 2007 140. 6755030 13.0
#> 3 3 LU BE 2 2007 140. 57078782 16.9
#> 4 4 BE LU 2 2007 140. 7117406 15.8
#> 5 5 LU BE 3 2007 140. 17379821 16.3
#> 6 6 BE LU 3 2007 140. 2622254 15.2
#> 7 7 LU BE 4 2007 140. 64867588 17.4
#> 8 8 BE LU 4 2007 140. 10731757 16.3
#> 9 9 LU BE 5 2007 140. 330702 14.1
#> 10 10 BE LU 5 2007 140. 7706 13.0
#> # ℹ 38,315 more rows
#> # ℹ 1 more variable: .resid <dbl>
# to get robust or clustered SEs, users can either:
# 1) specify the arguments directly in the `tidy()` call
tidy(gravity, conf.int = TRUE, cluster = c("Product", "Year"))
#> # A tibble: 1 × 7
#> term estimate std.error statistic p.value conf.low conf.high
#> <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
#> 1 log(dist_km) -2.17 0.0760 -28.5 3.88e-10 -2.34 -2.00
tidy(gravity, conf.int = TRUE, se = "threeway")
#> # A tibble: 1 × 7
#> term estimate std.error statistic p.value conf.low conf.high
#> <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
#> 1 log(dist_km) -2.17 0.175 -12.4 6.08e-9 -2.54 -1.79
# 2) or, feed tidy() a summary.fixest object that has already accepted
# these arguments
gravity_summ <- summary(gravity, cluster = c("Product", "Year"))
tidy(gravity_summ, conf.int = TRUE)
#> # A tibble: 1 × 7
#> term estimate std.error statistic p.value conf.low conf.high
#> <chr> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
#> 1 log(dist_km) -2.17 0.0760 -28.5 3.88e-10 -2.34 -2.00
# approach (1) is preferred.
相关用法
- R broom augment.felm 使用来自 (n) 个 felm 对象的信息来增强数据
- 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.smooth.spline 整理一个(n)smooth.spline对象
- R broom augment.drc 使用来自 a(n) drc 对象的信息增强数据
- R broom augment.decomposed.ts 使用来自 decomposed.ts 对象的信息增强数据
- R broom augment.poLCA 使用来自 poLCA 对象的信息增强数据
- R broom augment.lm 使用来自 (n) lm 对象的信息增强数据
- R broom augment.rqs 使用来自 (n) 个 rqs 对象的信息来增强数据
- R broom augment.polr 使用来自 (n) 个 polr 对象的信息增强数据
- R broom augment.plm 使用来自 plm 对象的信息增强数据
- R broom augment.nls 使用来自 nls 对象的信息增强数据
- R broom augment.gam 使用来自 gam 对象的信息增强数据
- 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 对象的信息增强数据
- R broom augment.betareg 使用来自 betareg 对象的信息增强数据
注:本文由纯净天空筛选整理自等大神的英文原创作品 Augment data with information from a(n) fixest object。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。