nanvl

Retorna col1 se não for NaN, caso contrário, retorna col2. Ambas as entradas devem ser colunas de ponto flutuante (DoubleType ou FloatType). Dá suporte ao Spark Connect.

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

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 ser verificada.
col2 pyspark.sql.Column ou str Segunda coluna a ser retornada se a primeira for NaN.

Devoluções

pyspark.sql.Column: valor da primeira coluna ou segundo se o primeiro for NaN.

Exemplos

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|
+---+---+-----------+-----------+