Skip to content

sign(col)

Описание

Функция sign() возвращает знак числа (-1, 0 или 1).

Параметры

  • col: Column - числовой столбец

Возвращаемое значение

Column - знак числа (-1 для отрицательных, 0 для нуля, 1 для положительных)

Пример использования

from pyspark.sql.functions import sign
from pyspark.sql import SparkSession

# Создаем SparkSession
spark = SparkSession.builder.appName("sign_example").getOrCreate()

# Создаем DataFrame с числами
data = [
    (-5,),
    (-0.1,),
    (0,),
    (0.1,),
    (5,)
]
df = spark.createDataFrame(data, ["value"])

# Вычисляем знак числа
df = df.withColumn("sign", sign("value"))
df.show()

# Результат:
# +-----+----+
# |value|sign|
# +-----+----+
# | -5.0|  -1|
# | -0.1|  -1|
# |  0.0|   0|
# |  0.1|   1|
# |  5.0|   1|
# +-----+----+

Примечания

  • Возвращает -1 для отрицательных чисел
  • Возвращает 0 для нуля
  • Возвращает 1 для положительных чисел
  • Возвращает NULL, если входное значение NULL
  • Эквивалентно функции signum()
  • Полезно для классификации чисел по знаку