Wald test used to test the joint nullity of a set of coefficients.
wald(x, keep =NULL, drop =NULL, print =TRUE, vcov, se, cluster,...)
Arguments
x: A fixest object. Obtained using the methods femlm, feols or feglm.
keep: Character vector. This element is used to display only a subset of variables. This should be a vector of regular expressions (see base::regex help for more info). Each variable satisfying any of the regular expressions will be kept. This argument is applied post aliasing (see argument dict). Example: you have the variable x1 to x55 and want to display only x1 to x9, then you could use keep = "x[[:digit:]]$". If the first character is an exclamation mark, the effect is reversed (e.g. keep = "!Intercept" means: every variable that does not contain Intercept is kept). See details.
drop: Character vector. This element is used if some variables are not to be displayed. This should be a vector of regular expressions (see base::regex help for more info). Each variable satisfying any of the regular expressions will be discarded. This argument is applied post aliasing (see argument dict). Example: you have the variable x1 to x55 and want to display only x1 to x9, then you could use drop = "x[[:digit:]]{2}". If the first character is an exclamation mark, the effect is reversed (e.g. drop = "!Intercept" means: every variable that does not contain Intercept is dropped). See details.
print: Logical, default is TRUE. If TRUE, then a verbose description of the test is prompted on the R console. Otherwise only a named vector containing the test statistics is returned.
vcov: Versatile argument to specify the VCOV. In general, it is either a character scalar equal to a VCOV type, either a formula of the form: vcov_type ~ variables. The VCOV types implemented are: "iid", "hetero" (or "HC1"), "cluster", "twoway", "NW" (or "newey_west"), "DK" (or "driscoll_kraay"), and "conley". It also accepts object from vcov_cluster, vcov_NW, NW, vcov_DK, DK, vcov_conley and conley. It also accepts covariance matrices computed externally. Finally it accepts functions to compute the covariances. See the vcov documentation in the vignette.
se: Character scalar. Which kind of standard error should be computed: standard , hetero , cluster , twoway , threeway
or fourway ? By default if there are clusters in the estimation: se = "cluster", otherwise se = "iid". Note that this argument is deprecated, you should use vcov instead.
cluster: Tells how to cluster the standard-errors (if clustering is requested). Can be either a list of vectors, a character vector of variable names, a formula or an integer vector. Assume we want to perform 2-way clustering over var1 and var2
contained in the data.frame base used for the estimation. All the following cluster arguments are valid and do the same thing: cluster = base[, c("var1", "var2")], cluster = c("var1", "var2"), cluster = ~var1+var2. If the two variables were used as fixed-effects in the estimation, you can leave it blank with vcov = "twoway" (assuming var1 [resp. var2] was the 1st [resp. 2nd] fixed-effect). You can interact two variables using ^ with the following syntax: cluster = ~var1^var2 or cluster = "var1^var2".
...: Any other element to be passed to summary.fixest.
Returns
A named vector containing the following elements is returned: stat, p, df1, and df2. They correspond to the test statistic, the p-value, the first and second degrees of freedoms.
If no valid coefficient is found, the value NA is returned.
Details
The type of VCOV matrix plays a crucial role in this test. Use the arguments se and cluster to change the type of VCOV for the test.
Examples
data(airquality)est = feols(Ozone ~ Solar.R + Wind + poly(Temp,3), airquality)# Testing the joint nullity of the Temp polynomialwald(est,"poly")# Same but with clustered SEswald(est,"poly", cluster ="Month")# Now: all vars but the polynomial and the interceptwald(est, drop ="Inte|poly")## Toy example: testing pre-trends#data(base_did)est_did = feols(y ~ x1 + i(period, treat,5)| id + period, base_did)# The graph of the coefficientscoefplot(est_did)# The pre-trend testwald(est_did,"period::[1234]$")# If "period::[1234]$" looks weird to you, check out# regular expressions: e.g. see ?regex.# Learn it, you won't regret it!