Skip to content

to_number(expr, format)

Описание

Функция to_number() преобразует строку в число с учетом формата.

Параметры

  • expr: Column - строка для преобразования
  • format: String - формат числа

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

Numeric - число

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

from pyspark.sql.functions import to_number, lit
from pyspark.sql import SparkSession

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

# Создаем DataFrame со строками
data = [
    ("$1,234.56",),
    ("789.12",)
]
df = spark.createDataFrame(data, ["amount"])

# Преобразуем строки в числа
result = df.select(
    to_number("amount", lit("$999,999.99")).alias("number")
).show()

# Результат:
# +--------+
# |number  |
# +--------+
# |1234.56 |
# |789.12  |
# +--------+

Примечания

  • Поддерживаются форматы: "9", "0", ".", ",", "$"
  • Для преобразования числа в строку используйте to_char()
  • Для преобразования строки в дату используйте to_date()
  • Для преобразования строки в бинарные данные используйте to_binary()