dayofmonth(col)
Описание
Функция dayofmonth()
извлекает день месяца из даты или временной метки.
Параметры
col
: Column - столбец с датой или временной меткой
Возвращаемое значение
Column - день месяца (число от 1 до 31)
Пример использования
from pyspark.sql.functions import dayofmonth, to_date, lit
from pyspark.sql import SparkSession
# Создаем SparkSession
spark = SparkSession.builder.appName("dayofmonth_example").getOrCreate()
# Создаем DataFrame с датами
data = [
("2023-01-15",),
("2023-02-28",),
("2023-12-31",)
]
df = spark.createDataFrame(data, ["date_str"])
# Преобразуем строки в даты и извлекаем день месяца
df = df.withColumn("date", to_date("date_str")) \
.withColumn("day", dayofmonth("date"))
df.show(truncate=False)
# Результат:
# +----------+----------+---+
# |date_str |date |day|
# +----------+----------+---+
# |2023-01-15|2023-01-15|15 |
# |2023-02-28|2023-02-28|28 |
# |2023-12-31|2023-12-31|31 |
# +----------+----------+---+
Примечания
- Возвращает NULL, если входное значение NULL
- Возвращает число от 1 до 31
- Эквивалентна функции
day()
- Для извлечения других компонентов даты используйте:
year()
для годаmonth()
для месяцаdayofweek()
для дня неделиdayofyear()
для дня года- Полезно для:
- Анализа данных по дням месяца
- Фильтрации по определенным дням
- Группировки данных по дням месяца