Bias Reduction in Generalized Linear Models
Overview
Estimation and inference from generalized linear models based on various methods for bias reduction and maximum penalized likelihood with powers of the Jeffreys prior as penalty. The 'brglmFit()' fitting method can achieve reduction of estimation bias by solving either the mean bias-reducing adjusted score equations in Firth (1993) doi:10.1093/biomet/80.1.27 and Kosmidis and Firth (2009) doi:10.1093/biomet/asp055, or the median bias-reducing adjusted score equations in Kenne et al. (2017) doi:10.1093/biomet/asx046, or through the direct subtraction of an estimate of the bias of the maximum likelihood estimator from the maximum likelihood estimates as in Cordeiro and McCullagh (1991) https://www.jstor.org/stable/2345592. See Kosmidis et al (2020) doi:10.1007/s11222-019-09860-6 for more details. Estimation in all cases takes place via a quasi Fisher scoring algorithm, and S3 methods for the construction of of confidence intervals for the reduced-bias estimates are provided. In the special case of generalized linear models for binomial and multinomial responses (both ordinal and nominal), the adjusted score approaches to mean and media bias reduction have been found to return estimates with improved frequentist properties, that are also always finite, even in cases where the maximum likelihood estimates are infinite (e.g. complete and quasi-complete separation; see Kosmidis and Firth, 2020 doi:10.1093/biomet/asaa052, for a proof for mean bias reduction in logistic regression). The 'mdyplFit()' fitting method fits logistic regression models using maximum Diaconis-Ylvisaker prior penalized likelihood, which also guarantees finite estimates. High-dimensionality corrections under proportional asymptotics can be applied to the resulting objects; see Sterzinger and Kosmidis (2024) doi:10.48550/arXiv.2311.07419 for details.
Bug fixes
- Added
...inmdyplControl()to allow fortolandwtolarguments inglm.fit(). - Fixed a bug where offsets were ignored in
summary.mdyplFit(). - Fixed a bug in
vcov.bracl()that returned incorrect covariances between coefficients for adjacent category logit models without proportional odds.
From NEWS.md in the release
Install
Health
- OK13 OK2026-10-15
- ERROR8 OK, 3 NOTE, 2 ERROR2026-09-18
- NOTE11 OK, 2 NOTE2026-07-16
- OK13 OK2026-06-09
- WARNING12 OK, 1 WARNING2026-06-08
Show 1 earlier changeHide 1 earlier change
- OK14 OK2026-03-10
Documentation
- Help pages
- 44includes a package overview page
- Examples that run
- 68%13 run in a plain check · 4 only when donttest examples are enabled (R CMD check --as-cran) · 2 hold no code
- Exported functions with examples
- 59%
- Documented parameters
- 98%
- Return-value docs
- 47%
- Help pages citing references
- 50%
Downloads
Repository
- PRs merged (all time)
- 74%
- Median days to close, 50 most recently updated closed issues
- 20
- Median days to close, 50 most recently updated closed PRs
- 0
Stars over time
Forks over time
Releases over time
Issues over time
PRs over time
Commits over time
Commit identities over time
5 development-tooling and community-health practices detected across 4 families in the upstream repository
Checks run against github.com/ikosmidis/brglm2 on 2026-10-21.
The R CMD check workflow runs on Linux, macOS and Windows, and on R-devel
Dependencies
Installing brglm2 adds 4 packages (2 with compiled code, 365 KB of source tarballs). Heaviest: enrichwith 103 KB, nleqslv 97 KB, statmod 91 KB.
Show all 28 packagesHide all 28 packages
Code & Tests
Datasets
People & History
Pick two releases to compare their code metrics.
- 1.1.1Latest
- 1.1.02026-04-29 · diff ↗
- RR 4.6.0 released · 2026-04-24
- 1.0.12025-11-22 · diff ↗
- 1.0.02025-08-29 · diff ↗ ·
added 9 exports
mdyplControl, mdyplFit, mdypl_control, mdypl_fit, plrtest, se0, se1, sloe, solve_se - RR 4.5.0 released · 2025-04-11
- RR 4.4.0 released · 2024-04-24
- 0.9.22023-10-11 · diff ↗
- RR 4.3.0 released · 2023-04-21
- 0.9
- RR 4.2.0 released · 2022-04-22
- 0.8.22021-11-21 · diff ↗
- 0.8.12021-09-27 · diff ↗
- 0.8.02021-07-17 · diff ↗ ·
removed 4 exports
checkInfiniteEstimates, detectSeparation, detectSeparationControl, detect_separation_controladded 2 exports
brnb, ordinal_superiority - RR 4.1.0 released · 2021-05-18
- 0.7.12021-01-22 · diff ↗
Show 18 earlier eventsHide 18 earlier events
- 0.7.02020-10-19 · diff ↗
- RR 4.0.0 released · 2020-04-24
- 0.6.22020-03-19 · diff ↗
- 0.6.12020-02-06 · diff ↗
- 0.6.02019-11-08 · diff ↗
- 0.5.22019-10-12 · diff ↗
- RR 3.6.0 released · 2019-04-26
- 0.5.12019-02-14 · diff ↗
- 0.5.0
- RR 3.5.0 released · 2018-04-23
- 0.1.82018-04-16 · diff ↗
- 0.1.72018-02-23 · diff ↗
- 0.1.62018-02-09 · diff ↗
- 0.1.52017-10-13 · diff ↗
- 0.1.42017-05-23 · diff ↗ ·
removed 1 export
detect_infinite_estimatesadded 9 exports
brglmControl, brglm_control, brglm_fit, checkInfiniteEstimates, check_infinite_estimates, detectSeparation, detectSeparationControl, detect_separation, detect_separation_control - RR 3.4.0 released · 2017-04-21
- 0.1.32017-04-04
- RR 3.3.0 released · 2016-05-03
Package metadata
- First published
- 2017-04-04
- Total releases
- 23 / 9 yrs
- License
- GPL-3 OSI
- Minimum R
- ≥ 3.5
- Bundled data
- 1.9 MB / 9 files
- Download size
- 2.3 MB
Cite
Cite this package
Run in R for the authors' preferred citation:
citation("brglm2")The package provides a citation file that builds its entry when R runs it. Run citation() to see it.
Cite the R Observatory
For a number measured here: a download total, a coverage figure, an archival date.
From data release v2026-10-25, which the citation names so these numbers can be found later. More on citing and the projects behind them.