Compartir a través de

nanvl

如果 col1 不是 NaN,则返回 col1;如果 col1 为 NaN,则返回 col2。 这两个输入应该是浮点列(DoubleType 或 FloatType)。 支持 Spark Connect。

有关相应的 Databricks SQL 函数,请参阅 nanvl 函数

Syntax

from pyspark.databricks.sql import functions as dbf

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

参数

参数 类型 Description
col1 pyspark.sql.Columnstr 要检查的第一列。
col2 pyspark.sql.Columnstr 如果第一列为 NaN,则返回第二列。

退货

pyspark.sql.Column:第一列或第二列的值(如果第一列为 NaN)。

例子

from pyspark.databricks.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|
+---+---+-----------+-----------+