Pular para o conteúdo principal

regr_avgx

Função agregada: retorna a média da variável independente para pares não nulos em um grupo, onde y é a variável dependente e x é a variável independente.

Para a função Databricks SQL correspondente, consulte regr_avgx função agregada.

Sintaxe

Python
import pyspark.sql.functions as sf

sf.regr_avgx(y=<y>, x=<x>)

Parâmetros

Parâmetro

Tipo

Descrição

y

pyspark.sql.Column ou str

A variável dependente.

x

pyspark.sql.Column ou str

A variável independente.

Devoluções

pyspark.sql.Column: a média da variável independente para pares não nulos em um grupo.

Exemplos

Exemplo 1 : Todos os pares são não nulos.

Python
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_avgx("y", "x"), sf.avg("x")).show()
Output
+---------------+------+
|regr_avgx(y, x)|avg(x)|
+---------------+------+
| 2.75| 2.75|
+---------------+------+

Exemplo 2 : Todos os valores de x dos pares são nulos.

Python
import pyspark.sql.functions as sf
df = spark.sql("SELECT * FROM VALUES (1, null) AS tab(y, x)")
df.select(sf.regr_avgx("y", "x"), sf.avg("x")).show()
Output
+---------------+------+
|regr_avgx(y, x)|avg(x)|
+---------------+------+
| NULL| NULL|
+---------------+------+

Exemplo 3 : Todos os valores y dos pares são nulos.

Python
import pyspark.sql.functions as sf
df = spark.sql("SELECT * FROM VALUES (null, 1) AS tab(y, x)")
df.select(sf.regr_avgx("y", "x"), sf.avg("x")).show()
Output
+---------------+------+
|regr_avgx(y, x)|avg(x)|
+---------------+------+
| NULL| 1.0|
+---------------+------+

Exemplo 4 : Os valores de x de alguns pares são nulos.

Python
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_avgx("y", "x"), sf.avg("x")).show()
Output
+---------------+------+
|regr_avgx(y, x)|avg(x)|
+---------------+------+
| 3.0| 3.0|
+---------------+------+

Exemplo 5 : Os valores de x ou y de alguns pares são nulos.

Python
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_avgx("y", "x"), sf.avg("x")).show()
Output
+---------------+------+
|regr_avgx(y, x)|avg(x)|
+---------------+------+
| 3.0| 3.0|
+---------------+------+