Added vcov.APEs()
generic to extract the covariance matrix after getAPEs()
.
Improved the finite sample performance of bias corrections for the average partial effects in case of perfectly classified observations.
Bias corrections for the average partial effects, i.e. getAPEs()
after biasCorr()
, do not require an offset algorithm anymore.
The default option 'n.pop' in getAPEs()
has been changed. Now the estimated covariance consists of the delta method part only, i.e. correction factor = 0.
Improved the numerical stability of the bias corrections.
biasCorr()
now also supports one-way fixed effects models.
Added bias corrections for 'cloglog' and 'cauchit'.
feglm()
and feglm.nb()
do not return a matrix of scores anymore. Instead they, optionally, return the centered regressor matrix. The corresponding option in feglmControl()
is 'keep.mx'. Default is TRUE.
Improved the numerical stability of the step-halving in feglm()
.
Changed the projection in the MAP algorithm.
The default option 'center.tol' in feglmControl()
has been lowered to better handle fitting problems that are not well-behaved.
Added optional 'weights' argument to feglm()
and feglm.nb()
.
Updated documentation.
Stopping condition of feglm.nb()
has been adjusted to better match that of glm.nb()
.
feglm.nb()
now additionally returns 'iter.outer' and 'conv.iter' based on iterations of the outer loop. Previously 'iter' and 'conv' were overwritten.
Step-halving in feglmFit()
and feglmOffset()
is now similar to glm.fit2()
.
Fixed an error in the covariance (influence function) of getAPEs()
.
Updated some references in the documentation and vignette.
Fixed some typos in the documentation and vignette.
Added option 'panel.structure' to biasCorr()
and getAPEs()
. This option allows to choose between the two-way bias correction suggested by Fernández-Val and Weidner (2016) and the bias corrections for network data suggested by Hinz, Stammann, and Wanner (2020). Currently both corrections are restricted to probit and logit models.
Added option 'sampling.fe' to getAPEs()
to impose simplifying assumptions when estimating the covariance matrix.
feglm()
now permits to expand functions with poly()
and bs()
(#9 @tcovert).
feglm()
now uses an acceleration scheme suggested by Correia, Guimaraes, and Zylkin (2019) that uses smarter starting values for centerVariables()
.
Added an example of the three-way bias correction suggested by Hinz, Stammann, and Wanner (2020) to the vignette.
The control parameter 'trace' now also returns the current parameter values as well as the residual deviance.
Fixed an error in getAPEs()
related to the estimation of the covariance.
Fixed a bug in the internal function that is used to estimate spectral densities.
All routines now use setDT()
instead of as.data.table()
to avoid unnecessary copies (suggested in #6 @zauster).
feglm.nb()
now returns 'iter' and 'conv' based on iterations of the outer loop.
Fixed a bug in feglm()
that prevented to use I()
for the dependent variable.
Fixed an error in getAPEs()
related to the covariance.
The last line of print.summary.feglm()
now ends with a line break (#6 @zauster).
The internal function feglmFit()
now correctly sets 'conv' if the algorithm does not converge (#5 @zauster).
Fixed some typos in the vignette.
feglm()
now allows to estimate binomial model with fractional response.
Added feglm.nb()
for negative binomial models.
Added post-estimation routine biasCorr()
for analytical bias-corrections (currently restricted to logit and probit models with two-way error component).
Added post-estimation routine getAPEs()
to estimate average partial effects and the corresponding standard errors (currently restricted to logit and probit models with two-way error component).
getFEs()
now returns a list of named vectors. Each vector refers to one fixed effects category (suggested in #4 @zauster).
Changed stopping condition to the one used by glm()
.
Changed least squares fit to QR (similar to lsfit()
used by glm()
).
Source code and vignettes revised.
Initial release on CRAN.