Nanvl

Devolve col1 se este não for NaN, caso contrário, devolve col2 se col1 for NaN. Ambas as entradas devem ser colunas de ponto flutuante (DoubleType ou FloatType). Suporta o Spark Connect.

Para a função SQL do Databricks correspondente, veja nanvl função.

Sintaxe

from pyspark.sql import functions as dbf

dbf.nanvl(col1=<col1>, col2=<col2>)

Parâmetros

Parâmetro Tipo Description
col1 pyspark.sql.Column ou str Primeira coluna a verificar.
col2 pyspark.sql.Column ou str A segunda coluna a regressar, se for a primeira, é NaN.

Devoluções

pyspark.sql.Column: valor da primeira coluna ou da segunda se a primeira for NaN .

Examples

from pyspark.sql import functions as dbf
df = spark.createDataFrame([(1.0, float('nan')), (float('nan'), 2.0)], ("a", "b"))
df.select("*", dbf.nanvl("a", "b"), dbf.nanvl(df.a, df.b)).show()
+---+---+-----------+-----------+
|  a|  b|nanvl(a, b)|nanvl(a, b)|
+---+---+-----------+-----------+
|1.0|NaN|        1.0|        1.0|
|NaN|2.0|        2.0|        2.0|
+---+---+-----------+-----------+