boottest()
now allows for univariate tests that involve multiple variables. E.g. one can now test hypothesis as ´var1 + var2 = c´ where c is a scalar. More details on the syntax can be found in the vignette. All methods of for objects of class boottest
have been updated.boottest()
now also supports “equal-tailed” p-values and one-sided hypotheses. For one-sided tests, confidence intervals are currently not supported.boot_algo2()
function has slightly been modified. invert_p_val2()
is superseded by invert_p_val()
.boottest()
varied depending on the class of the input fixed effects for regressions both via lfe::felm()
and fixest::feols()
. This bug occurred because boottest()
does not work with a pre-processed model.frame object from either felm()
or feols()
but works with the original input data. While both felm()
and feols()
change non-factor fixed effects variables to factors internally, boottest()
did not check but implicitely assumed that all fixed effects used in the regression models are indeed factors in the original data set. As a consequence, if one or more fixed effects were e.g. numeric, boottest()
would produce incorrect results without throwing an error. With version 0.3.7, boottest()
checks internally if all variables in the original data set which are used as fixed effects are factor variables and if not, changes them to factors. Thanks for timotheedotc for raising the issue on github, which can be found here: https://github.com/s3alfisc/fwildclusterboot/issues/14.boottest()
with the wild cluster bootstrap implemented via clusterSEs
.if(requireNamespace("pkgname"))
statements for suggested packages in the vignettes, examples and tests. Note that unit tests will now only execute on CRAN if both fixest
and lfe
can be installed on the OS.Bug fix: For Rademacher and Mammen weights and cases where (2^ number of clusters) < # boostrap iterations, (deterministic ) full enumeration should have been employed for sampling the bootstrap weights. Full enumeration means the following: for e.g. 6 numbers of clusters, only 2^6 = 64 unique draws from either the Rademacher or Mammen distributions exists. Therefore, boottest()
overwrites the user-provided number of bootstrap iterations to \(B = \text{(2^ number of clusters)}\) if a larger number is chosen. The bug now occured because the bootstrap weights were drawn randomly with replacement instead of using full enumeration. Note: full enumeration was introduced with version 0.3.3. Thanks to fschoner for finding the bug! see github issue #11
Bug fix: A small bug has been fixed related to missing values in the cluster variables.
By default, boottest()
now sets an internal seed if no seed is provided by the user via the seed
function argument.
Several improvements to the documentation.
glance.boottest()
method was added, which enables the use of the modelsummary
package with fwildclusterboot
.tidy.boottest()
method is no longer exported. You can still access it via fwildclusterboot:::tidy.boottest()
or by loading the generics
package via library(generics)
.boottest()
uses half the available threads for parallel execution. The number of threads can be set via the nthreads
function argument.boottest()
- the user can now set the tolerance and maximum number of iterations for the calculation of confidence intervals. By default, tol = 1e-6
and maxiter = 10
.data.table
and fabricatr
- both are now only suggested. Further, the package now comes with an example data set ‘voters’.Add support for