Skip to content

dayofweek(date)

Описание

Функция dayofweek() извлекает день недели из даты или временной метки.

Параметры

  • date: Column - столбец с датами или временными метками

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

Integer - день недели из даты или временной метки (от 1 до 7, где 1 - воскресенье)

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

from pyspark.sql.functions import dayofweek
from pyspark.sql import SparkSession
from datetime import datetime

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

# Создаем DataFrame с датами
data = [
    (datetime(2023, 1, 15),),  # воскресенье
    (datetime(2023, 1, 16),),  # понедельник
    (datetime(2023, 1, 17),)   # вторник
]
df = spark.createDataFrame(data, ["date"])

# Извлекаем день недели из дат
result = df.select(
    "date",
    dayofweek("date").alias("day_of_week")
).show(truncate=False)

# Результат:
# +-------------------+-----------+
# |date               |day_of_week|
# +-------------------+-----------+
# |2023-01-15 00:00:00|1          |
# |2023-01-16 00:00:00|2          |
# |2023-01-17 00:00:00|3          |
# +-------------------+-----------+

Примечания

  • NULL значения возвращают NULL
  • Дни недели нумеруются от 1 до 7:
  • 1 - воскресенье
  • 2 - понедельник
  • 3 - вторник
  • 4 - среда
  • 5 - четверг
  • 6 - пятница
  • 7 - суббота
  • Для работы с датами также используйте:
  • year() для извлечения года
  • month() для извлечения месяца
  • day() для извлечения дня
  • hour() для извлечения часа
  • minute() для извлечения минут
  • second() для извлечения секунд
  • quarter() для извлечения квартала
  • dayofyear() для извлечения дня года