EVOLUTION-MANAGER
Edit File: augment.fixest.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><title>R: Augment data with information from a(n) fixest object</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <link rel="stylesheet" type="text/css" href="R.css" /> </head><body> <table width="100%" summary="page for augment.fixest {broom}"><tr><td>augment.fixest {broom}</td><td style="text-align: right;">R Documentation</td></tr></table> <h2>Augment data with information from a(n) fixest object</h2> <h3>Description</h3> <p>Augment accepts a model object and a dataset and adds information about each observation in the dataset. Most commonly, this includes predicted values in the <code>.fitted</code> column, residuals in the <code>.resid</code> column, and standard errors for the fitted values in a <code>.se.fit</code> column. New columns always begin with a <code>.</code> prefix to avoid overwriting columns in the original dataset. </p> <p>Users may pass data to augment via either the <code>data</code> argument or the <code>newdata</code> argument. If the user passes data to the <code>data</code> argument, it <strong>must</strong> be exactly the data that was used to fit the model object. Pass datasets to <code>newdata</code> to augment data that was not used during model fitting. This still requires that all columns used to fit the model are present. </p> <p>Augment will often behave differently depending on whether <code>data</code> or <code>newdata</code> is given. This is because there is often information associated with training observations (such as influences or related) measures that is not meaningfully defined for new observations. </p> <p>For convenience, many augment methods provide default <code>data</code> arguments, so that <code>augment(fit)</code> will return the augmented training data. In these cases, augment tries to reconstruct the original data based on the model object with varying degrees of success. </p> <p>The augmented dataset is always returned as a <a href="../../tibble/html/tibble.html">tibble::tibble</a> with the <strong>same number of rows</strong> as the passed dataset. This means that the passed data must be coercible to a tibble. At this time, tibbles do not support matrix-columns. This means you should not specify a matrix of covariates in a model formula during the original model fitting process, and that <code><a href="../../splines/html/ns.html">splines::ns()</a></code>, <code><a href="../../stats/html/poly.html">stats::poly()</a></code> and <code><a href="../../survival/html/Surv.html">survival::Surv()</a></code> objects are not supported in input data. If you encounter errors, try explicitly passing a tibble, or fitting the original model on data in a tibble. </p> <p>We are in the process of defining behaviors for models fit with various <code>na.action</code> arguments, but make no guarantees about behavior when data is missing at this time. </p> <h3>Usage</h3> <pre> ## S3 method for class 'fixest' augment(x, data = NULL, newdata = NULL, type.predict = "response", ...) </pre> <h3>Arguments</h3> <table summary="R argblock"> <tr valign="top"><td><code>x</code></td> <td> <p>A <code>fixest</code> object returned from any of the <code>fixest</code> estimators</p> </td></tr> <tr valign="top"><td><code>data</code></td> <td> <p>A <a href="../../base/html/data.frame.html">base::data.frame</a> or <code><a href="../../tibble/html/tibble.html">tibble::tibble()</a></code> containing the original data that was used to produce the object <code>x</code>. Defaults to <code>stats::model.frame(x)</code> so that <code>augment(my_fit)</code> returns the augmented original data. <strong>Do not</strong> pass new data to the <code>data</code> argument. Augment will report information such as influence and cooks distance for data passed to the <code>data</code> argument. These measures are only defined for the original training data.</p> </td></tr> <tr valign="top"><td><code>newdata</code></td> <td> <p>A <code><a href="../../base/html/data.frame.html">base::data.frame()</a></code> or <code><a href="../../tibble/html/tibble.html">tibble::tibble()</a></code> containing all the original predictors used to create <code>x</code>. Defaults to <code>NULL</code>, indicating that nothing has been passed to <code>newdata</code>. If <code>newdata</code> is specified, the <code>data</code> argument will be ignored.</p> </td></tr> <tr valign="top"><td><code>type.predict</code></td> <td> <p>Passed to <code><a href="../../fixest/html/predict.fixest.html">predict.fixest</a></code> <code>type</code> argument. Defaults to <code>"link"</code> (like <code>glm.predict</code>).</p> </td></tr> <tr valign="top"><td><code>...</code></td> <td> <p>Additional arguments passed to <code>summary</code> and <code>confint</code>. Important arguments are <code>se</code> and <code>cluster</code>. Other arguments are <code>dof</code>, <code>exact_dof</code>, <code>forceCovariance</code>, and <code>keepBounded</code>. See <code><a href="../../fixest/html/summary.fixest.html">summary.fixest</a></code>.</p> </td></tr> </table> <h3>Value</h3> <p>A <code><a href="../../tibble/html/tibble.html">tibble::tibble()</a></code> with columns: </p> <table summary="R valueblock"> <tr valign="top"><td><code>.fitted</code></td> <td> <p>Fitted or predicted value.</p> </td></tr> <tr valign="top"><td><code>.resid</code></td> <td> <p>The difference between observed and fitted values.</p> </td></tr> </table> <h3>Note</h3> <p>Important note: <code>fixest</code> models do not include a copy of the input data, so you must provide it manually. </p> <p>augment.fixest only works for <code><a href="../../fixest/html/feols.html">fixest::feols()</a></code>, <code><a href="../../fixest/html/feglm.html">fixest::feglm()</a></code>, and <code><a href="../../fixest/html/femlm.html">fixest::femlm()</a></code> models. It does not work with results from <code><a href="../../fixest/html/femlm.html">fixest::fenegbin()</a></code>, <code><a href="../../fixest/html/feNmlm.html">fixest::feNmlm()</a></code>, or <code><a href="../../fixest/html/feglm.html">fixest::fepois()</a></code>. </p> <h3>See Also</h3> <p><code><a href="reexports.html">augment()</a></code>, <code><a href="../../fixest/html/feglm.html">fixest::feglm()</a></code>, <code><a href="../../fixest/html/femlm.html">fixest::femlm()</a></code>, <code><a href="../../fixest/html/feols.html">fixest::feols()</a></code> </p> <p>Other fixest tidiers: <code><a href="tidy.fixest.html">tidy.fixest</a>()</code> </p> <h3>Examples</h3> <pre> library(fixest) gravity <- feols(log(Euros) ~ log(dist_km) | Origin + Destination + Product + Year, trade) tidy(gravity) glance(gravity) augment(gravity, trade) ## To get robust or clustered SEs, users can either: tidy(gravity, conf.int = TRUE, cluster = c("Product", "Year")) tidy(gravity, conf.int = TRUE, se = "threeway") # 2) 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) # Approach (1) is preferred. ## The other fixest methods all work similarly. For example: gravity_pois <- feglm(Euros ~ log(dist_km) | Origin + Destination + Product + Year, trade) tidy(gravity_pois) glance(gravity_pois) augment(gravity_pois, trade) </pre> <hr /><div style="text-align: center;">[Package <em>broom</em> version 0.7.0 <a href="00Index.html">Index</a>]</div> </body></html>