Provides mdyplFit() method for the
glm() function, which estimates logistic regression models
using maximum Diaconis-Ylvisaker prior penalized likelihood, and
associated methods. Corrections to estimates, estimated standard errors,
z statistics, and so on, can be applied using the developments
Sterzinger and Kosmidis (2024, doi:10.48550/arXiv.2311.07419) by setting
hd_correction = TRUE in the calls to the
summary() and confint() methods for
"mdyplFit" objects.
Added add1() and drop1() methods for
mdyplFit objects.
Added MultipleFeatures data set, which is a subset
of Duin (1998, doi:10.24432/C5HC70), as analyzed in Sterzinger and
Kosmidis (2024, doi:10.48550/arXiv.2311.07419).
Documentation updates and documentation of new methods.
Added add1() and drop1() methods for
brglmFit objects, so that step() does not
default to the methods for glm objects (which would return
nonsense results); thanks to jamiahuswalton@github
(https://github.com/ikosmidis/brglm2/issues/33) for reporting the
issue.
Sane staring values, graceful failing, updates to optimization
procedure, and improvements to methods for brnb(); thanks
to cperk@github (https://github.com/ikosmidis/brglm2/issues/31) for
reporting issues with brnb() when infinite ML estimates are
encountered.
Convergence of the brglm_fit iterations is now
determined if the L^Inf norm of the step size (rather than the L^1 as it
was previously) of the quasi-Fisher scoring procedure is less than
epsilon (see ?brglm_control for the definition
of epsilon). This is more natural as epsilon
then determines directly the precision of the reported estimates and
does not depend on their number.
brglm_control() now checks that the supplied value
of max_step_factor is numeric and greater or equal to
1. If not, then it is set to the default value of
12.
Vignette updates
enzymes and hepatitis data sets
(from the pmlr) to
support examples and tests.expo() method for brglmFit and
glm objects estimates the exponential of parameters of
generalized linear models with maximum likelihood or various mean and
median bias reduction methods (see ?expo for details). The
expo() method is particularly useful for computing
(corrected) estimates of the multiplicative impact of a unit increase on
a covariate on the mean of a Poisson log-linear model
(family = poisson("log") in glm()) while
adjusting for other covariates, the odds ratio associated with a unit
increase on a covariate in a logistic regression model
(family = binomial("logit") in glm()) while
adjusting for other covariates, the relative risk associated with a unit
increase on a covariate in a relative risk regression model
(family = binomial("log") in glm()) while
adjusting for other covariates, among others.transformation != "identity" when
type is ML or AS_median or
AS_mixed.Moved unit tests to tinytest.
Moved documentation to markdown markup through roxygen2.
New vignette titled “Estimating the exponential of regression
parameters using brglm2”, to demonstrate the
expo() method.
Various documentation fixes.
bracl objects with
non-identifiable parameters.Work on output consistently from print() methods for
summary.XYZ objects; estimator type is now printed and
other fixes.
Enriched warning when algorithm does not converge with more informative text.
Documentation fixes and updates
brnb() allows fitting negative binomial regression
models using implicit and explicit bias reduction methods. See vignettes
for a case study.simulate() method for objects of class
brmultinom and braclordinal_superiority() method to estimate Agresti and
Kateri (2017)’s ordinal superiority measures, and compute bias
corrections for those.Wald.ratios = TRUE in summary.brmultinom.vcov.bracl that would return an error if
the "bracl" object was computed using bracl()
with parallel = TRUE and one covariate.bracl() related to the handling or zero
weights that could result in hard-to-traceback errors.bracl() that could cause errors in fits
with one covariate.brglmFit() iteration returns last estimates that worked
if iteration fails.confint() was not returning anything
when applied to objects of class brmultinom.control
glm(). argument was specified using the output from
brglmControl() or brglm_control().check_aliasing option in
brglmControl() to tell brglm_fit() to skip
(check_aliasing = TRUE) or not
(check_aliasing = FALSE) rank deficiency checks (through a
QR decomposition of the model matrix), saving some computational
effort.NA coefficients when
brglmFit() was called with a vector x or an
x with no column names.confint method for brmulitnom objectsvcov.brglmFit() now uses
vcov.summary.glm() and supports the complete
argument for controlling whether the variance covariance matrix should
include rows and columns for aliased parameters.detect_sepration() and
check_infinite_estimates(), which will be removed from
brglm2 at version 0.8. New versions of
detect_sepration() and
check_infinite_estimates() are now maintained in the detectseparation
R package.print.summary() for
brmultinom and bracl objects.detect_separation() now handles one-column model
matrices correctly.brglmFit() can now do maximum penalized likelihood with
powers of the Jeffreys prior as penalty
(type = "MPL_Jeffreys) for all supported generalized linear
models. See the help files of brglmControl() and
brglmFit() for details.?brglmFit.print.brmultinom() is now exported, so
bracl and brmultinom objects print
correctly.response_adjustment argument in
brglmControl() to allow for more fine-tuning of the
starting values when brglmFit() is called with
start = NULL.brglmControl().brglmFit() now works as expected with custom link
functions (mean and median bias reduction).brglmFit() respects the specification of the
transformation argument in brglmControl().brglmFit().quasi(),
quasibinomial() and quasibinomial() families
and documentation update.bracl() for fitting adjacent category logit
models for ordinal responses using maximum likelihood, mean bias
reduction, and median bias reduction and associated methods
(logLik, summary and so on).predict() methods for brmultinom and
bracl objects. Added residuals() methods for
brmultinom and bracl objects (residuals of the
equivalent Poisson log-linear model)mis() link functions for accounting for
misclassification in binomial response models (Neuhaus, 1999,
Biometrika).summary() method for brmultinom
objects.NA dispersion for models
with 0 df resid.type = AS_mixed as an option to use
mean-bias reducing score functions for the regression
parameters and median-bias reducing score functions for
the dispersion in models with unknown dispersion.check_infinite_estimates() now accepts
brmultinom objects.singular.ok argument to brglmFit()
and detect_separation() methods in line with the update of
glm.fit().brglm_control().brglmControl() is now exported.slowit did nothing; now included in iteration.detect_separation() method for the
glm() function can be used to check for separation in
binomial response settings without fitting the model. This relies on a
port of Kjell Konis’ safeBinaryRegression:::separator()
function (see ?detect_separation).type = "AS_median".brglmFit(), brglm_fit(),
detectSeparation(), detect_separation(),
brglm_control(), brglmControl(),
detectSeparationControl(),
detect_separation_control(),
checkInfiniteEstimates(),
check_infinite_estimates()).cho2inv().