聚合函数:返回组中非 null 对的依赖变量的平均值,其中 y 依赖变量是 x 独立变量。
有关相应的 Databricks SQL 函数,请参阅 regr_avgy 聚合函数。
Syntax
import pyspark.sql.functions as sf
sf.regr_avgy(y=<y>, x=<x>)
参数
| 参数 | 类型 | Description |
|---|---|---|
y |
pyspark.sql.Column 或 str |
依赖变量。 |
x |
pyspark.sql.Column 或 str |
独立变量。 |
退货
pyspark.sql.Column:组中非 null 对的从属变量的平均值。
例子
示例 1:所有对均为非 null。
import pyspark.sql.functions as sf
df = spark.sql("SELECT * FROM VALUES (1, 2), (2, 2), (2, 3), (2, 4) AS tab(y, x)")
df.select(sf.regr_avgy("y", "x"), sf.avg("y")).show()
+---------------+------+
|regr_avgy(y, x)|avg(y)|
+---------------+------+
| 1.75| 1.75|
+---------------+------+
示例 2:所有对的 x 值均为 null。
import pyspark.sql.functions as sf
df = spark.sql("SELECT * FROM VALUES (1, null) AS tab(y, x)")
df.select(sf.regr_avgy("y", "x"), sf.avg("y")).show()
+---------------+------+
|regr_avgy(y, x)|avg(y)|
+---------------+------+
| NULL| 1.0|
+---------------+------+
示例 3:所有对的 y 值为 null。
import pyspark.sql.functions as sf
df = spark.sql("SELECT * FROM VALUES (null, 1) AS tab(y, x)")
df.select(sf.regr_avgy("y", "x"), sf.avg("y")).show()
+---------------+------+
|regr_avgy(y, x)|avg(y)|
+---------------+------+
| NULL| NULL|
+---------------+------+
示例 4:某些对的 x 值为 null。
import pyspark.sql.functions as sf
df = spark.sql("SELECT * FROM VALUES (1, 2), (2, null), (2, 3), (2, 4) AS tab(y, x)")
df.select(sf.regr_avgy("y", "x"), sf.avg("y")).show()
+------------------+------+
| regr_avgy(y, x)|avg(y)|
+------------------+------+
|1.6666666666666...| 1.75|
+------------------+------+
示例 5:某些对的 x 或 y 值为 null。
import pyspark.sql.functions as sf
df = spark.sql("SELECT * FROM VALUES (1, 2), (2, null), (null, 3), (2, 4) AS tab(y, x)")
df.select(sf.regr_avgy("y", "x"), sf.avg("y")).show()
+---------------+------------------+
|regr_avgy(y, x)| avg(y)|
+---------------+------------------+
| 1.5|1.6666666666666...|
+---------------+------------------+