Partilhar via


try_divide

Devolve dividend/divisor. Realiza sempre divisão em ponto flutuante. O seu resultado é sempre nulo se divisor for 0. Suporta o Spark Connect.

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

Sintaxe

from pyspark.databricks.sql import functions as dbf

dbf.try_divide(left=<left>, right=<right>)

Parâmetros

Parâmetro Tipo Description
left pyspark.sql.Column or column name Dividendo
right pyspark.sql.Column or column name divisor

Examples

from pyspark.databricks.sql import functions as dbf
spark.createDataFrame(
    [(6000, 15), (1990, 2), (1234, 0)], ["a", "b"]
).select("*", dbf.try_divide("a", "b")).show()
+----+---+----------------+
|   a|  b|try_divide(a, b)|
+----+---+----------------+
|6000| 15|           400.0|
|1990|  2|           995.0|
|1234|  0|            NULL|
+----+---+----------------+

from pyspark.databricks.sql import functions as dbf
df = spark.range(4).select(dbf.make_interval(dbf.lit(1)).alias("itvl"), "id")
df.select("*", dbf.try_divide("itvl", "id")).show()
+-------+---+--------------------+
|   itvl| id|try_divide(itvl, id)|
+-------+---+--------------------+
|1 years|  0|                NULL|
|1 years|  1|             1 years|
|1 years|  2|            6 months|
|1 years|  3|            4 months|
+-------+---+--------------------+