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

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

Arguments

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.

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.

Value

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

References

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

Author

T. W. Yee

Note

The response must be a two-column matrix. Currently, the fitted value is a 2-column matrix with 0.5 values because the marginal distributions correspond to a standard uniform distribution.

See also

Examples

if (FALSE) { # \dontrun{
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)
} # }