Атрибут is_leap_year
Атрибут is_leap_year применяется к Series
с типом данных datetime через аксессор dt
и возвращает Series булевых значений, где True
указывает на то, что год соответствующей даты является
високосным, а False - что год невисокосный.
Этот атрибут не принимает никаких параметров.
Синтаксис
ser.dt.is_leap_year
Пример
Давайте создадим серию дат и проверим, какие из них приходятся на високосные годы:
import pandas as pd
ser = pd.Series(pd.date_range('2023-01-01', periods=4, freq='YE'))
res = ser.dt.is_leap_year
print(res)
Результат выполнения кода:
0 False
1 False
2 False
3 False
dtype: bool
Пример
А теперь создадим серию дат, включающую високосные годы, и проверим результат:
import pandas as pd
ser = pd.Series(pd.date_range('2020-01-01', periods=5, freq='YS'))
res = ser.dt.is_leap_year
print(res)
Результат выполнения кода:
0 True
1 False
2 False
3 False
4 False
dtype: bool
Пример
Также можно использовать атрибут для фильтрации дат:
import pandas as pd
ser = pd.Series(pd.date_range('2019-01-01', periods=6, freq='YS'))
leap_years = ser[ser.dt.is_leap_year]
print(leap_years)
Результат выполнения кода:
1 2020-01-01
4 2023-01-01
dtype: datetime64[ns]
Смотрите также
-
атрибут
year,
который возвращает год даты -
атрибут
month,
который возвращает месяц даты -
атрибут
day,
который возвращает день даты -
атрибут
days_in_month,
который возвращает количество дней в месяце