Skip to content

xpath_float(xml, path)

Описание

Функция xpath_float() извлекает значение с плавающей точкой из XML-документа по указанному XPath-выражению.

Параметры

  • xml: Column - XML-документ в виде строки
  • path: String - XPath-выражение для поиска значения

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

Double - извлеченное значение с плавающей точкой

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

from pyspark.sql import SparkSession
from pyspark.sql.functions import xpath_float

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

# Создаем DataFrame с XML
data = [
    ('<book><price>12.99</price></book>',),
    ('<book><price>15.50</price></book>',)
]
df = spark.createDataFrame(data, ["xml"])

# Извлекаем цены
result = df.select(
    xpath_float("xml", "//price").alias("price")
).show()

# Результат:
# +-----+
# |price|
# +-----+
# |12.99|
# |15.50|
# +-----+

Примечания

  • Если XPath не найден или значение не может быть преобразовано в число, возвращается NULL
  • Для извлечения чисел используйте xpath_number()
  • Для извлечения строк используйте xpath_string()
  • Для извлечения булевых значений используйте xpath_boolean()