bifgmexp.RdEstimate 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(Y_1 \leq y_1, Y_2 \leq y_2) = e^{-y_1-y_2} ( 1 + \alpha [1 - e^{-y_1}] [1 - e^{-y_2}] ) + 1 - e^{-y_1} - e^{-y_2} $$ for \(\alpha\) between \(-1\) and \(1\). The support of the function is for \(y_1>0\) and \(y_2>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.
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.
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.
N <- 1000; mdata <- data.frame(y1 = rexp(N), y2 = rexp(N))
if (FALSE) plot(ymat) # \dontrun{}
fit <- vglm(cbind(y1, y2) ~ 1, bifgmexp, data = mdata, trace = TRUE)
#> Iteration 1: loglikelihood = -1994.6345
#> Iteration 2: loglikelihood = -1994.554
#> Iteration 3: loglikelihood = -1994.554
#> Iteration 4: loglikelihood = -1994.554
fit <- vglm(cbind(y1, y2) ~ 1, bifgmexp, data = mdata, # May fail
trace = TRUE, crit = "coef")
#> Iteration 1: coefficients = -0.23182787
#> Iteration 2: coefficients = -0.15545762
#> Iteration 3: coefficients = -0.15628525
#> Iteration 4: coefficients = -0.15628532
#> Iteration 5: coefficients = -0.15628532
coef(fit, matrix = TRUE)
#> rhobitlink(apar)
#> (Intercept) -0.1562853
Coef(fit)
#> apar
#> -0.077984
head(fitted(fit))
#> y1 y2
#> 1 1 1
#> 2 1 1
#> 3 1 1
#> 4 1 1
#> 5 1 1
#> 6 1 1