РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
592 of 687 menu

Класс DateOffset

Класс DateOffset применяется для создания различных смещений дат в Pandas. Он используется при работе с временными рядами, позволяя добавлять или вычитать определенные промежутки времени из объектов datetime. В отличие от Timedelta, который представляет собой фиксированное количество времени, DateOffset учитывает календарные особенности (например, разное количество дней в месяцах или високосные годы).

Класс принимает различные параметры для настройки смещения: years, months, weeks, days, hours, minutes, seconds, microseconds, nanoseconds.

Синтаксис

pd.DateOffset(years=0, months=0, weeks=0, days=0, hours=0, minutes=0, seconds=0, microseconds=0, nanoseconds=0)

Пример

Давайте создадим смещение на одну неделю и добавим его к заданной дате:

import pandas as pd from datetime import datetime date = datetime(2024, 1, 1) offset = pd.DateOffset(weeks=1) res = date + offset print(res)

Результат выполнения кода:

"2024-01-08 00:00:00"

Пример

Давайте создадим смещение на два месяца и один день, а затем применим его к нескольким датам в Series:

import pandas as pd ser = pd.Series(pd.date_range('2024-01-01', periods=3)) offset = pd.DateOffset(months=2, days=1) res = ser + offset print(res)

Результат выполнения кода:

0 2024-03-02 1 2024-03-03 2 2024-03-04 dtype: datetime64[ns]

Пример

Давайте используем смещение для вычитания из текущей даты:

import pandas as pd from datetime import datetime date = datetime(2024, 12, 31) offset = pd.DateOffset(months=1, days=5) res = date - offset print(res)

Результат выполнения кода:

"2024-11-26 00:00:00"

Пример

Давайте создадим смещение с несколькими компонентами и применим его к DataFrame:

import pandas as pd df = pd.DataFrame({ 'a': [1, 2, 3], 'b': [10, 20, 30] }) df['date'] = pd.date_range('2024-01-01', periods=3) offset = pd.DateOffset(days=10, hours=5, minutes=30) df['new_date'] = df['date'] + offset print(df)

Результат выполнения кода:

a b date new_date 0 1 10 2024-01-01 2024-01-11 05:30:00 1 2 20 2024-01-02 2024-01-12 05:30:00 2 3 30 2024-01-03 2024-01-13 05:30:00

Смотрите также

  • класс DateOffset,
    который используется для создания календарных смещений
  • класс DateOffset,
    позволяющий добавлять периоды к датам
  • класс DateOffset,
    применяемый при работе с временными рядами
  • класс DateOffset,
    который учитывает календарные особенности
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить