u_distance_covariance_sqr#

u_distance_covariance_sqr(x, y, *, exponent=1, method=DistanceCovarianceMethod.AUTO, compile_mode=CompileMode.AUTO)[source]#

Unbiased estimator for the squared distance covariance.

Parameters
  • x (Array) – First random vector. The columns correspond with the individual random variables while the rows are individual instances of the random vector.

  • y (Array) – Second random vector. The columns correspond with the individual random variables while the rows are individual instances of the random vector.

  • exponent (float) – Exponent of the Euclidean distance, in the range \((0, 2)\). Equivalently, it is twice the Hurst parameter of fractional Brownian motion.

  • method (Union[DistanceCovarianceMethod, Literal['auto', 'naive', 'avl', 'mergesort']]) – Method to use internally to compute the distance covariance.

  • compile_mode (CompileMode) – Compilation mode used. By default it tries to use the fastest available type of compilation.

Returns

Value of the unbiased estimator of the squared distance covariance.

Return type

Array

See also

distance_covariance distance_covariance_sqr

Examples

>>> import numpy as np
>>> import dcor
>>> a = np.array([[1., 2., 3., 4.],
...               [5., 6., 7., 8.],
...               [9., 10., 11., 12.],
...               [13., 14., 15., 16.]])
>>> b = np.array([[1.], [0.], [0.], [1.]])
>>> dcor.u_distance_covariance_sqr(a, a) 
42.6666666...
>>> dcor.u_distance_covariance_sqr(a, b) 
-2.6666666...
>>> dcor.u_distance_covariance_sqr(b, b) 
0.6666666...
>>> dcor.u_distance_covariance_sqr(a, b, exponent=0.5) 
-0.2996598...