Learn R Programming

VGAM (version 0.9-0)

bisa: Birnbaum-Saunders Distribution Family Function

Description

Estimates the shape and scale parameters of the Birnbaum-Saunders distribution by maximum likelihood estimation.

Usage

bisa(lshape = "loge", lscale = "loge",
     ishape = NULL, iscale = 1, imethod = 1, zero = NULL)

Arguments

lscale, lshape
Parameter link functions applied to the shape and scale parameters ($a$ and $b$ below). See Links for more choices. A log link is the default for both because they are positive.
iscale, ishape
Initial values for $a$ and $b$. A NULL means an initial value is chosen internally using imethod.
imethod
An integer with value 1 or 2 or 3 which specifies the initialization method. If failure to converge occurs try the other value, or else specify a value for ishape and/or iscale.
zero
An integer-valued vector specifying which linear/additive predictors are modelled as intercepts only. The default is none of them. If used, choose one value from the set {1,2}.

Value

  • An object of class "vglmff" (see vglmff-class). The object is used by modelling functions such as vglm, and vgam.

Details

The (two-parameter) Birnbaum-Saunders distribution has a cumulative distribution function that can be written as $$F(y;a,b) = \Phi[ \xi(y/b)/a]$$ where $\Phi(\cdot)$ is the cumulative distribution function of a standard normal (see pnorm), $\xi(t) = \sqrt{t} - 1 / \sqrt{t}$, $y > 0$, $a>0$ is the shape parameter, $b>0$ is the scale parameter. The mean of $Y$ (which is the fitted value) is $b(1 + a^2/2)$. and the variance is $a^2 b^2 (1 + \frac{5}{4}a^2)$. By default, $\eta_1 = \log(a)$ and $\eta_2 = \log(b)$ for this family function.

Note that $a$ and $b$ are orthogonal, i.e., the Fisher information matrix is diagonal. This family function implements Fisher scoring, and it is unnecessary to compute any integrals numerically.

References

Lemonte, A. J. and Cribari-Neto, F. and Vasconcellos, K. L. P. (2007) Improved statistical inference for the two-parameter Birnbaum-Saunders distribution. Computational Statistics & Data Analysis, 51, 4656--4681.

Birnbaum, Z. W. and Saunders, S. C. (1969) A new family of life distributions. Journal of Applied Probability, 6, 319--327.

Birnbaum, Z. W. and Saunders, S. C. (1969) Estimation for a family of life distributions with applications to fatigue. Journal of Applied Probability, 6, 328--347.

Engelhardt, M. and Bain, L. J. and Wright, F. T. (1981) Inferences on the parameters of the Birnbaum-Saunders fatigue life distribution based on maximum likelihood estimation. Technometrics, 23, 251--256.

Johnson, N. L. and Kotz, S. and Balakrishnan, N. (1995) Continuous Univariate Distributions, 2nd edition, Volume 2, New York: Wiley.

See Also

pbisa, inv.gaussianff.

Examples

Run this code
bdat1 <- data.frame(x2 = runif(nn <- 1000))
bdat1 <- transform(bdat1, shape = exp(-0.5 + x2), scale = exp(1.5))
bdat1 <- transform(bdat1, y = rbisa(nn, shape, scale))
fit1 <- vglm(y ~ x2, bisa(zero = 2), bdat1, trace = TRUE)
coef(fit1, matrix = TRUE)

bdat2 <- data.frame(shape = exp(-0.5), scale = exp(0.5))
bdat2 <- transform(bdat2, y = rbisa(nn, shape, scale))
fit <- vglm(y ~ 1, bisa, bdat2, trace = TRUE)
with(bdat2, hist(y, prob = TRUE, ylim = c(0, 0.5), col = "lightblue"))
coef(fit, matrix = TRUE)
with(bdat2, mean(y))
head(fitted(fit))
x <- with(bdat2, seq(0, max(y), len = 200))
lines(dbisa(x, Coef(fit)[1], Coef(fit)[2]) ~ x, bdat2, col = "orange", lwd = 2)

Run the code above in your browser using DataLab