dcor.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 (T) – First random vector. The columns correspond with the individual random variables while the rows are individual instances of the random vector.

  • y (T) – 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, str]) – 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

T

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...