Non-Positive Log-Binomial Regression

Share:

Description

Finds the maximum likelihood estimate of a log-link binomial GLM using an EM algorithm, where each of the coefficients in the linear predictor is restricted to be non-positive.

Usage

1
2
3
nplbin(y, x, offset, start, control = logbin.control(),
       accelerate = c("em", "squarem", "pem", "qn"),
       control.accelerate = list(list()))

Arguments

y

binomial response. May be a single column of 0/1 or two columns, giving the number of successes and failures.

x

non-negative covariate matrix.

offset

non-positive additive offset vector. The default is a vector of zeros.

start

starting values for the parameter estimates. All elements must be less than or equal to -control$bound.tol.

control

a logbin.control object, which controls the fitting process.

accelerate

a character string that determines the acceleration algorithm to be used, (partially) matching one of "em" (no acceleration – the default), "squarem", "pem" or "qn". See turboem for further details. Note that "decme" is not permitted.

control.accelerate

a list of control parameters for the acceleration algorithm. See turboem for details of the parameters that apply to each algorithm. If not specified, the defaults are used.

Details

This is a workhorse function for logbin, and runs the EM algorithm to find the constrained non-positive MLE associated with a log-link binomial GLM. See Marschner and Gillett (2012) for full details.

Value

A list containing the following components

coefficients

the constrained non-positive maximum likelihood estimate of the parameters.

residuals

the residuals at the MLE, that is y - fitted.values

fitted.values

the fitted mean values.

rank

the number of parameters in the model (named "rank" for compatibility — we assume that models have full rank)

family

included for compatibility — will always be binomial(log).

linear.predictors

the linear fit on link scale.

deviance

up to a constant, minus twice the maximised log-likelihood.

aic

a version of Akaike's An Information Criterion, minus twice the maximised log-likelihood plus twice the number of parameters.

aic.c

a small-sample corrected version of Akaike's An Information Criterion (Hurvich, Simonoff and Tsai, 1998).

null.deviance

the deviance for the null model, comparable with deviance. The null model will include the offset and an intercept.

iter

the number of iterations of the EM algorithm used.

weights

included for compatibility — a vector of ones.

prior.weights

the number of trials associated with each binomial response.

df.residual

the residual degrees of freedom.

df.null

the residual degrees of freedom for the null model.

y

the y vector used.

converged

logical. Did the EM algorithm converge (according to conv.test)?

boundary

logical. Is the MLE on the boundary of the parameter space — i.e. are any of the coefficients < control$bound.tol?

loglik

the maximised log-likelihood.

nn.design

the non-negative x matrix used.

Author(s)

Mark W. Donoghoe markdonoghoe@gmail.com.

This function is based on code from Marschner and Gillett (2012) written by Alexandra Gillett.

References

Hurvich, C. M., J. S. Simonoff and C.-L. Tsai (1998). Smoothing parameter selection in non-parametric regression using an improved Akaike information criterion. Journal of the Royal Statistical Society: Series B (Statistical Methodology) 60(2): 271–293.

Marschner, I. C. and A. C. Gillett (2012). Relative risk regression: reliable and flexible methods for log-binomial models. Biostatistics 13(1): 179–192.