Title here
Summary here
add_months(start, months)
add_months
- Возвращает дату, с доавлением указанного количества месяцев. Если месяцы - заданы как отрицательное значение, количество месяцев будет вычтено из начальной даты.
start
: Column or str. дата к которой необходимо прибавить количество месяцевmonths
: Column or str or int - количество месяцевColumn
новый столбец с обновленными датами
from pyspark.sql import SparkSession
from pyspark.sql.functions import col, add_months
# Создание сессии Spark
spark = SparkSession.builder.appName("add_months_example").getOrCreate()
# Пример данных со столбцом "date"
data = [("2023-01-01",), ("2023-05-15",), ("2023-08-20",)]
df = spark.createDataFrame(data, ["date"])
# Добавление 3 месяцев к столбцу "date" и создание нового столбца "updated_date"
df_with_updated_date = df.withColumn("updated_date", add_months(col("date"), 3))
# Отображение результата
df_with_updated_date.show()
+----------+------------+
| date|updated_date|
+----------+------------+
|2023-01-01| 2023-04-01|
|2023-05-15| 2023-08-15|
|2023-08-20| 2023-11-20|
+----------+------------+
#пример с отрицтальным количеством месяцев
from pyspark.sql import SparkSession
from pyspark.sql.functions import col, add_months
# Создание сессии Spark
spark = SparkSession.builder.appName("add_months_example").getOrCreate()
# Пример данных со столбцом "date"
data = [("2023-01-01",), ("2023-05-15",), ("2023-08-20",)]
df = spark.createDataFrame(data, ["date"])
# Отнимаем 3 месяца от "date" и создаем новый столбец "updated_date"
df_with_updated_date = df.withColumn("updated_date", add_months(col("date"), -3))
# Отображение результата
df_with_updated_date.show()
+----------+------------+
| date|updated_date|
+----------+------------+
|2023-01-01| 2022-10-01|
|2023-05-15| 2023-02-15|
|2023-08-20| 2023-05-20|
+----------+------------+
pyspark add_months
Добавлено в версии | 1.5.0. |
Обновлено в версии | 1.5.0. |