Description Usage Arguments Details Value Note Author(s) References See Also Examples

Computes distance covariance and distance correlation statistics, which are multivariate measures of dependence.

1 2 3 |

`x` |
data or distances of first sample |

`y` |
data or distances of second sample |

`index` |
exponent on Euclidean distance, in (0,2] |

`dcov`

and `dcor`

or `DCOR`

compute distance
covariance and distance correlation statistics.
`DCOR`

is a self-contained R function returning a list of
statistics. `dcor`

execution is faster than `DCOR`

(see examples).

The sample sizes (number of rows) of the two samples must
agree, and samples must not contain missing values. Arguments
`x`

, `y`

can optionally be `dist`

objects;
otherwise these arguments are treated as data.

Distance correlation is a new measure of dependence between random
vectors introduced by Szekely, Rizzo, and Bakirov (2007).
For all distributions with finite first moments, distance
correlation *R* generalizes the idea of correlation in two
fundamental ways:
(1) *R(X,Y)* is defined for *X* and *Y* in arbitrary dimension.
(2) *R(X,Y)=0* characterizes independence of *X* and
*Y*.

Distance correlation satisfies *0 ≤ R ≤ 1*, and
*R = 0* only if *X* and *Y* are independent. Distance
covariance *V* provides a new approach to the problem of
testing the joint independence of random vectors. The formal
definitions of the population coefficients *V* and
*R* are given in (SRB 2007). The definitions of the
empirical coefficients are as follows.

The empirical distance covariance *V_n(X,Y)*
with index 1 is
the nonnegative number defined by

*
V^2_n (X,Y) = (1/n^2) sum_{k,l=1:n}
A_{kl}B_{kl}
*

where *A_{kl}* and *B_{kl}* are

*
A_{kl} = a_{kl}-\bar a_{k.}- \bar a_{.l} + \bar a_{..}
*

*
B_{kl} = b_{kl}-\bar b_{k.}- \bar b_{.l} + \bar b_{..}.
*

Here

*
a_{kl} = ||X_k - X_l||_p, b_{kl} = ||Y_k - Y_l||_q,
k,l=1,…,n,
*

and the subscript `.`

denotes that the mean is computed for the
index that it replaces. Similarly,
*V_n(X)* is the nonnegative number defined by

*
V^2_n (X) = V^2_n (X,X) =
(1/n^2) sum_{k,l=1:n}
A_{kl}^2.
*

The empirical distance correlation *R(\mathbf{X,Y})* is
the square root of

*
R^2_n(X,Y)=
V^2_n(X,Y) / sqrt(V^2_n (X) V^2_n(Y)).
*

See `dcov.test`

for a test of multivariate independence
based on the distance covariance statistic.

`dcov`

returns the sample distance covariance and
`dcor`

returns the sample distance correlation.
`DCOR`

returns a list with elements

`dCov` |
sample distance covariance |

`dCor` |
sample distance correlation |

`dVarX` |
distance variance of x sample |

`dVarY` |
distance variance of y sample |

Two methods of computing the statistics are provided. `DCOR`

is a stand-alone R function that returns a list of statistics.
`dcov`

and `dcor`

provide R interfaces to the C
implementation, which is usually faster. `dcov`

and `dcor`

call an internal function `.dcov`

.

Note that it is inefficient to compute dCor by:

square root of
`dcov(x,y)/sqrt(dcov(x,x)*dcov(y,y))`

because the individual
calls to `dcov`

involve unnecessary repetition of calculations.
For this reason, `DCOR`

computes and returns all four statistics.

Maria L. Rizzo mrizzo @ bgsu.edu and Gabor J. Szekely

Szekely, G.J., Rizzo, M.L., and Bakirov, N.K. (2007),
Measuring and Testing Dependence by Correlation of Distances,
*Annals of Statistics*, Vol. 35 No. 6, pp. 2769-2794.

doi: 10.1214/009053607000000505

Szekely, G.J. and Rizzo, M.L. (2009),
Brownian Distance Covariance,
*Annals of Applied Statistics*,
Vol. 3, No. 4, 1236-1265.

doi: 10.1214/09-AOAS312

Szekely, G.J. and Rizzo, M.L. (2009),
Rejoinder: Brownian Distance Covariance,
*Annals of Applied Statistics*, Vol. 3, No. 4, 1303-1308.

`bcdcor`

`dcovU`

`pdcor`

`dcov.test`

`dcor.ttest`

`pdcor.test`

1 2 3 4 5 6 7 8 9 10 11 |

```
[1] 0.1025087
[1] 0.1025087
[1] 0.08956717
[1] 0.186289
$dCov
[1] 0.08956717
$dCor
[1] 0.186289
$dVarX
[1] 0.3598708
$dVarY
[1] 0.642357
```

Embedding an R snippet on your website

Add the following code to your website.

For more information on customizing the embed code, read Embedding Snippets.