weekday(date)
Описание
Функция weekday() возвращает день недели для указанной даты (0 = понедельник, 6 = воскресенье).
Параметры
date: Column - дата или временная метка
Возвращаемое значение
Column - день недели (0-6)
Пример использования
from pyspark.sql.functions import weekday, to_date, lit
from pyspark.sql import SparkSession
# Создаем SparkSession
spark = SparkSession.builder.appName("weekday_example").getOrCreate()
# Создаем DataFrame с датами
data = [
    ("2024-03-18",),  # Понедельник
    ("2024-03-19",),  # Вторник
    ("2024-03-20",),  # Среда
    ("2024-03-21",),  # Четверг
    ("2024-03-22",),  # Пятница
    ("2024-03-23",),  # Суббота
    ("2024-03-24",)   # Воскресенье
]
df = spark.createDataFrame(data, ["date_str"])
# Преобразуем строки в даты и получаем день недели
df = df.withColumn("date", to_date("date_str"))
df = df.withColumn("day_of_week", weekday("date"))
df.show()
# Результат:
# +----------+----------+-----------+
# |  date_str|      date|day_of_week|
# +----------+----------+-----------+
# |2024-03-18|2024-03-18|          0|
# |2024-03-19|2024-03-19|          1|
# |2024-03-20|2024-03-20|          2|
# |2024-03-21|2024-03-21|          3|
# |2024-03-22|2024-03-22|          4|
# |2024-03-23|2024-03-23|          5|
# |2024-03-24|2024-03-24|          6|
# +----------+----------+-----------+
 Примечания
- Возвращает 0 для понедельника, 6 для воскресенья
 - Возвращает NULL, если входное значение NULL
 - Отличается от 
dayofweek(), который возвращает 1 для воскресенья, 7 для субботы - Полезно для анализа данных по дням недели
 - Часто используется для фильтрации и группировки данных