corr 聚合函数

适用于:check marked yes Databricks SQL check marked yes Databricks Runtime

返回表示一组数字对之间的关联情况的皮尔逊系数。

语法

corr ( [ALL | DISTINCT] expr1, expr2 ) [FILTER ( WHERE cond ) ]

还可以使用 OVER 子句将此函数作为窗口函数调用。

参数

  • expr1:一个计算结果为数字的表达式。
  • expr2:一个计算结果为数字的表达式。
  • cond:一个可选的布尔表达式,可筛选用于聚合的行。

返回

一个 DOUBLE。

如果指定了 DISTINCT,则该函数仅对一组唯一的 expr1expr2 对进行运算。

示例

> SELECT corr(c1, c2) FROM VALUES (3, 2), (3, 3), (3, 3), (6, 4) as tab(c1, c2);
 0.816496580927726

> SELECT corr(DISTINCT c1, c2) FROM VALUES (3, 2), (3, 3), (3, 3), (6, 4) as tab(c1, c2);
 0.8660254037844387

> SELECT corr(DISTINCT c1, c2) FILTER(WHERE c1 != c2)
    FROM VALUES (3, 2), (3, 3), (3, 3), (6, 4) as tab(c1, c2);
 1.0