Skip to contents

This function wraps around several sandwich and lmtest functions to calculate robust standard errors and returns them in a useful format.

Usage

get_robust_se(
  model,
  type = "HC3",
  cluster = NULL,
  data = model.frame(model),
  vcov = NULL
)

Arguments

model

A regression model, preferably of class lm or glm

type

One of "HC3", "const", "HC", "HC0", "HC1", "HC2", "HC4", "HC4m", "HC5". See sandwich::vcovHC() for some more details on these choices. Note that some of these do not work for clustered standard errors (see sandwich::vcovCL()).

cluster

If you want clustered standard errors, either a string naming the column in data that represents the clusters or a vector of clusters that is the same length as the number of rows in data.

data

The data used to fit the model. Default is to just get the model.frame from model.

vcov

You may provide the variance-covariance matrix yourself and this function will just calculate standard errors, etc. based on that. Default is NULL.

Value

A list with the following:

  • coefs: a coefficient table with the estimates, standard errors, t-statistics, and p-values from lmtest.

  • ses: The standard errors from coefs.

  • ts: The t-statistics from coefs.

  • ps: The p-values from coefs.

  • type: The argument to robust.

  • use_cluster: TRUE or FALSE indicator of whether clusters were used.

  • cluster: The clusters or name of cluster variable used, if any.

  • vcov: The robust variance-covariance matrix.