Fix a sprintf issue, apparently sprintf('%.8e', 1) is not legal in future R -devel.
Backport changes by CRAN maintainers (2.8.5-1): remove all.tests=TRUE in parallel::detectCores()
Backport changes by CRAN maintainers (2.8.5-1): delete file examples/lfe-Ex.Rout.save
Fix a few typos with devtools::spell_check()
Added an internal devtools_internal.R with few testing calls.
Changes in version 2.8-5
Corrected the vignette about estimable functions. The change in the base::sample() function made the examples meaningless, and I forgot to fix it in 2.8-3.
Changes in version 2.8-4
Support for nested clusters and reghdfe-option by Grant McDermott and Karl Dunkle Werner.
Changed some extern declarations in the C-code to comply with standards enforced by the upcoming gcc10.
Changed inner workings of the unnamed() anddemeanlist() functions so they still conserve some memory with the new reference count machinery.
Changes in version 2.8-3
Fixed a bug in Crowsum which prevented computation of clustered standard errors in large datasets (rows x covariates exceeds 2 billion). Thanks to mcmalone for the report.
Minor updates to documentation and some cosmetic code changes.
Updates to configure.ac at the request of Brian Ripley
Updates to tests to reflect the new uniform sample() algorithm
summary.felm now defaults to robust errors ifgetOption(lfe.robust=TRUE). As with the other options, lfe.robust is initialized from the environment variable LFE_ROBUST upon load.
A felm-object now works as expected with formula().
A felm-object now works as expected with sandwich::bread().
Changes in version 2.8
Added functionality for closed form standard errors on the fixed effects if standard normal and only one fixed effect.
Changes in version 2.7
Added a na.rm argument to demeanlist to remove rows with NAs in the input data prior to centering. Previously these were silently set to 0.
A bug in the negative Eigenvalue adjustment for multiway clustering has been fixed.
Dependence on package R2Cuba has been removed because that package is orphaned and will be removed from CRAN.
Changes in version 2.6
If running with robust or clustered standard errors,getfe now adds a column 'se' which is a copy of the 'clusteredse' or 'robustse'. This to ensure compatibility with packagebroom.
Added a routine sargan() to compute Sargan's S.
Changes in version 2.5
demeanlist() will now do the transformation in place if given an unnamed input. This saves memory in various other places.
Multiway clustered standard errors now incorporate the negative Eigenvalue adjustment of Cameron, Gelbach, Miller. I.e. they are forced to zero. Can be switched off by felm(...,psdef=FALSE).
Fixed a bug in btrap which could yield wrong bootstrapped standard errors in getfe.
A function nlexpect() has been added to integrate functions of estimated coefficients over the residual distribution.
waldtest() now supports non-linear restrictions with the Delta-method.
Changes in version 2.4 (2015-10-26
A bug in bias correction with clustered errors has been fixed.
A bug in the handling of expressions f:g with two factors has been fixed.
A function estfun.felm has been introduced to improve interoperability with the package multiwayvcov. Also a functionweights.felm has been introduced.
A bug in residuals.felm has been fixed.
felm now supports bootstrapping an arbitrary expression involving estimated coefficients. This can also be done by repeated calls to felm, but the builtin functionality avoids repeated calls to model.frame and model.matrix which can be quite time-consuming for large datasets.
Changes in version 2.3 (2015-05-25)
felm now has some support for "pdata.frame"s from package plm. In particular, it is now possible to use things like felm(y ~ x+ lag(wage), data=pdata) where pdata is a "pdata.frame".
A bug preventing the use of k-class estimators has been fixed.
A bug leading to wrong robust standard errors when using weights has been fixed.
Changes in version 2.2 (2015-04-13)
A bug which caused felm to crash R when all cases of the data had NAs has been fixed. An error is raised instead.
felm now supports weights.
The conjugate gradient solver and trace estimation routine used by fevcov have been made public ascgsolve and mctrace.
Changes in version 2.0-2.1 (2015-03-05)
Better support for matrices as covariates, both on the left and right hand side of the equation, and in the instrumental variable specification.
Support for multiple left hand sides, with formulas likey|z|w ~ X |f1 + f2. The content of 'felm' objects have changed slightly to accomodate this, and generic functions like vcov() and coef() have gained an extra argument 'lhs' to specify which left hand side to retrieve information about.
Two new functions, waldtest() and condfstat() have been included to test linear restrictions on parameters, and to compute conditional F statistics to test for weak instruments in the IV estimations. Observations with missing values are now correctly removed in IV-estimations.
The old syntax, with 'G()' to specify factors to project out, has been deprecated. It still works, but will yield a warning. Similarly with the arguments 'iv' and 'clustervar' to felm().
felm now takes a new argument in the ... part,kclass to estimate k-class estimators with instrumental variables.
Changes in version 1.8 (2014-12-25)
Two new functions were added, fevcov() and bccorr(), to compute limited mobility bias corrections for covariances (and correlations) between high dimensional factors. See citation('lfe') for reference to article describing it.
Changes in version 1.7 (2014-03-13)
Support for multiway clustering added. Multiway clusters are specified in the 4th part of the formula, like y ~ x | f1+f2 | 0 | c1+c2
Changes in version 1.6 (2013-12-06)
Added support for projecting out interactions between continuous covariates and factors with specifications like y ~ x | f1 + x2:f1.
Version 1.5 (2013-10-28)
Version presented in R-journal article. (See citation('lfe') for reference)