R: Frank's Bivariate Distribution Family Function

bifrankcop {VGAM} | R Documentation

## Frank's Bivariate Distribution Family Function

### Description

Estimate the association parameter of Frank's bivariate distribution by maximum likelihood estimation.

### Usage

    bifrankcop(lapar = "loglink", iapar = 2, nsimEIM = 250)

### Arguments

`lapar` | Link function applied to the (positive) association parameter alpha. See `Links` for more choices.
`iapar` | Numeric. Initial value for alpha. If a convergence failure occurs try assigning a different value.
`nsimEIM` | See `CommonVGAMffArguments`.

### Details

The cumulative distribution function is

P(Y1 <= y1, Y2 <= y2) = H_{alpha}(y1,y2) = log_{alpha} [1 + (alpha^(y1)-1)*(alpha^(y2)-1)/ (alpha-1)]

for alpha != 1. Note the logarithm here is to base alpha. The support of the function is the unit square.

When 0<alpha<1 the probability density function h_{alpha}(y_1,y_2) is symmetric with respect to the lines y2=y1 and y2=1-y1. When alpha>1 then h_{1/alpha}(1-y_1,y_2).

If alpha=1 then H(y1,y2)=y1*y2, i.e., uniform on the unit square. As alpha approaches 0 then H(y1,y2)=min(y1,y2). As alpha approaches infinity then H(y1,y2)=max(0,y1+y2-1).

The default is to use Fisher scoring implemented using `rbifrankcop`. For intercept-only models an alternative is to set `nsimEIM=NULL` so that a variant of Newton-Raphson is used.

### Value

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

### Note

The response must be a two-column matrix. Currently, the fitted value is a matrix with two columns and values equal to a half. This is because the marginal distributions correspond to a standard uniform distribution.

### Author(s)

T. W. Yee

### References

Genest, C. (1987). Frank's family of bivariate distributions. Biometrika, 74, 549–555.

### See Also

`rbifrankcop`, `bifgmcop`, `simulate.vlm`.

### Examples

    ## Not run:
    ymat <- rbifrankcop(n = 2000, apar = exp(4))
    plot(ymat, col = "blue")
    fit <- vglm(ymat ~ 1, fam = bifrankcop, trace = TRUE)
    coef(fit, matrix = TRUE)
    Coef(fit)
    vcov(fit)
    head(fitted(fit))
    summary(fit)

    ## End(Not run)

[Package VGAM version 1.1-3 Index]