bifgmexp: Bivariate Farlie-Gumbel-Morgenstern Exponential Distribution...

View source: R/family.bivariate.R

bifgmexpR Documentation

Bivariate Farlie-Gumbel-Morgenstern Exponential Distribution Family Function


Estimate the association parameter of FGM bivariate exponential distribution by maximum likelihood estimation.


bifgmexp(lapar = "rhobitlink", iapar = NULL, tola0 = 0.01,
         imethod = 1)



Link function for the association parameter alpha, which lies between -1 and 1. See Links for more choices and other information.


Numeric. Optional initial value for alpha. By default, an initial value is chosen internally. If a convergence failure occurs try assigning a different value. Assigning a value will override the argument imethod.


Positive numeric. If the estimate of alpha has an absolute value less than this then it is replaced by this value. This is an attempt to fix a numerical problem when the estimate is too close to zero.


An integer with value 1 or 2 which specifies the initialization method. If failure to converge occurs try the other value, or else specify a value for ia.


The cumulative distribution function is

P(Y1 <= y1, Y2 <= y2) = exp(-y1-y2) * ( 1 + alpha * [1 - exp(-y1)] * [1 - exp(-y2)] ) + 1 - exp(-y1) - exp(-y2)

for alpha between -1 and 1. The support of the function is for y1>0 and y2>0. The marginal distributions are an exponential distribution with unit mean. When alpha=0 then the random variables are independent, and this causes some problems in the estimation process since the distribution no longer depends on the parameter.

A variant of Newton-Raphson is used, which only seems to work for an intercept model. It is a very good idea to set trace = TRUE.


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


The response must be a two-column matrix. Currently, the fitted value is a matrix with two columns and values equal to 1. This is because each marginal distribution corresponds to a exponential distribution with unit mean.

This VGAM family function should be used with caution.


T. W. Yee


Castillo, E., Hadi, A. S., Balakrishnan, N. and Sarabia, J. S. (2005). Extreme Value and Related Models with Applications in Engineering and Science, Hoboken, NJ, USA: Wiley-Interscience.

See Also

bifgmcop, bigumbelIexp.


N <- 1000; mdata <- data.frame(y1 = rexp(N), y2 = rexp(N))
## Not run: plot(ymat)
fit <- vglm(cbind(y1, y2) ~ 1, bifgmexp, data = mdata, trace = TRUE)
fit <- vglm(cbind(y1, y2) ~ 1, bifgmexp, data = mdata, # May fail
            trace = TRUE, crit = "coef")
coef(fit, matrix = TRUE)

VGAM documentation built on July 6, 2022, 5:05 p.m.