Learn R Programming

VGAM (version 1.1-8)

biplackettcop: Plackett's Bivariate Copula Family Function

Description

Estimate the association parameter of Plackett's bivariate distribution (copula) by maximum likelihood estimation.

Usage

biplackettcop(link = "loglink", ioratio = NULL, imethod = 1,
              nsimEIM = 200)

Value

An object of class "vglmff"

(see vglmff-class). The object is used by modelling functions such as vglm

and vgam.

Arguments

link

Link function applied to the (positive) odds ratio \(\psi\). See Links for more choices and information.

ioratio

Numeric. Optional initial value for \(\psi\). If a convergence failure occurs try assigning a value or a different value.

imethod, nsimEIM

See CommonVGAMffArguments.

Author

T. W. Yee

Details

The defining equation is $$\psi = H \times (1-y_1-y_2+H) / ((y_1-H) \times (y_2-H))$$ where \(P(Y_1 \leq y_1, Y_2 \leq y_2) = H_{\psi}(y_1,y_2)\) is the cumulative distribution function. The density function is \(h_{\psi}(y_1,y_2) =\) $$\psi [1 + (\psi-1)(y_1 + y_2 - 2 y_1 y_2) ] / \left( [1 + (\psi-1)(y_1 + y_2) ]^2 - 4 \psi (\psi-1) y_1 y_2 \right)^{3/2}$$ for \(\psi > 0\). Some writers call \(\psi\) the cross product ratio but it is called the odds ratio here. The support of the function is the unit square. The marginal distributions here are the standard uniform although it is commonly generalized to other distributions.

If \(\psi = 1\) then \(h_{\psi}(y_1,y_2) = y_1 y_2\), i.e., independence. As the odds ratio tends to infinity one has \(y_1=y_2\). As the odds ratio tends to 0 one has \(y_2=1-y_1\).

Fisher scoring is implemented using rbiplackcop. Convergence is often quite slow.

References

Plackett, R. L. (1965). A class of bivariate distributions. Journal of the American Statistical Association, 60, 516--522.

See Also

rbiplackcop, bifrankcop.

Examples

Run this code
if (FALSE) {
ymat <- rbiplackcop(n = 2000, oratio = exp(2))
plot(ymat, col = "blue")
fit <- vglm(ymat ~ 1, fam = biplackettcop, trace = TRUE)
coef(fit, matrix = TRUE)
Coef(fit)
vcov(fit)
head(fitted(fit))
summary(fit)
}

Run the code above in your browser using DataLab