BYlogreg | R Documentation |
Computation of the estimator of Bianco and Yohai (1996) in logistic regression. Now provides both the weighted and regular (unweighted) BY-estimator.
By default, an intercept term is included and p parameters are estimated. For more details, see the reference.
Note: This function is for “back-compatibility” with the
BYlogreg()
code web-published at KU Leuven, Belgium,
and also available as file ‘FunctionsRob/BYlogreg.ssc’ from
https://www.wiley.com/legacy/wileychi/robust_statistics/robust.html.
However instead of using this function, the recommended interface is
glmrob(*, method = "BY")
or ... method = "WBY" ..
,
see glmrob
.
BYlogreg(x0, y, initwml = TRUE, addIntercept = TRUE,
const = 0.5, kmax = 1000, maxhalf = 10, sigma.min = 1e-4,
trace.lev = 0)
x0 |
a numeric |
y |
numeric |
initwml |
logical for selecting one of the two possible methods for computing the initial value of the optimization process. If If |
addIntercept |
logical indicating that a column of |
const |
tuning constant used in the computation of the estimator (default=0.5). |
kmax |
maximum number of iterations before convergence (default=1000). |
maxhalf |
max number of step-halving (default=10). |
sigma.min |
smallest value of the scale parameter before implosion (and hence non-convergence) is assumed. |
trace.lev |
logical (or integer) indicating if intermediate results
should be printed; defaults to |
a list with components
convergence |
logical indicating if convergence was achieved |
objective |
the value of the objective function at the minimum |
coefficients |
vector of parameter estimates |
vcov |
variance-covariance matrix of the coefficients (if convergence is TRUE). |
sterror |
standard errors, i.e., simply |
Originally, Christophe Croux and Gentiane Haesbroeck, with thanks to Kristel Joossens and Valentin Todorov for improvements.
Speedup, tweaks, more “control” arguments: Martin Maechler.
Croux, C., and Haesbroeck, G. (2003) Implementing the Bianco and Yohai estimator for Logistic Regression, Computational Statistics and Data Analysis 44, 273–295.
Ana M. Bianco and Víctor J. Yohai (1996) Robust estimation in the logistic regression model. In Helmut Rieder, Robust Statistics, Data Analysis, and Computer Intensive Methods, Lecture Notes in Statistics 109, pages 17–34.
The more typical way to compute BY-estimates (via
formula
and methods):
glmrob(*, method = "WBY")
and .. method = "BY"
.
set.seed(17)
x0 <- matrix(rnorm(100,1))
y <- rbinom(100, size=1, prob= 0.5) # ~= as.numeric(runif(100) > 0.5)
BY <- BYlogreg(x0,y)
BY <- BYlogreg(x0,y, trace.lev=TRUE)
## The "Vaso Constriction" aka "skin" data:
data(vaso)
vX <- model.matrix( ~ log(Volume) + log(Rate), data=vaso)
vY <- vaso[,"Y"]
head(cbind(vX, vY))# 'X' does include the intercept
vWBY <- BYlogreg(x0 = vX, y = vY, addIntercept=FALSE) # as 'vX' has it already
v.BY <- BYlogreg(x0 = vX, y = vY, addIntercept=FALSE, initwml=FALSE)
## they are relatively close, well used to be closer than now,
## with the (2023-05, VT) change of covMcd() scale-correction
stopifnot( all.equal(vWBY, v.BY, tolerance = 0.008) ) # was ~ 1e-4 till 2023-05
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.