u_distance_correlation_sqr#

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

Bias-corrected estimator for the squared distance correlation.

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 bias-corrected estimator of the squared distance correlation.

Return type

Array

See also

distance_correlation distance_correlation_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_correlation_sqr(a, a)
1.0
>>> dcor.u_distance_correlation_sqr(a, b)
-0.4999999...
>>> dcor.u_distance_correlation_sqr(b, b)
1.0
>>> dcor.u_distance_correlation_sqr(a, b, exponent=0.5)
... 
-0.4050479...