pandas.tseries.offsets.FY5253Quarter#

class pandas.tseries.offsets.FY5253Quarter#

DateOffset increments between business quarter dates for 52-53 week fiscal year.

Also known as a 4-4-5 calendar.

It is used by companies that desire that their fiscal year always end on the same day of the week.

It is a method of managing accounting periods. It is a common calendar structure for some industries, such as retail, manufacturing and parking industry.

For more information see: https://en.wikipedia.org/wiki/4-4-5_calendar

The year may either:

  • end on the last X day of the Y month.

  • end on the last X day closest to the last day of the Y month.

X is a specific day of the week. Y is a certain month of the year

startingMonth = 1 corresponds to dates like 1/31/2007, 4/30/2007, … startingMonth = 2 corresponds to dates like 2/28/2007, 5/31/2007, … startingMonth = 3 corresponds to dates like 3/30/2007, 6/29/2007, …

Parameters:
nint

The number of business quarters represented.

normalizebool, default False

Normalize start/end dates to midnight before generating date range.

weekdayint {0, 1, …, 6}, default 0

A specific integer for the day of the week.

  • 0 is Monday

  • 1 is Tuesday

  • 2 is Wednesday

  • 3 is Thursday

  • 4 is Friday

  • 5 is Saturday

  • 6 is Sunday.

startingMonthint {1, 2, …, 12}, default 1

The month in which fiscal years end.

qtr_with_extra_weekint {1, 2, 3, 4}, default 1

The quarter number that has the leap or 14 week when needed.

variationstr, default “nearest”

Method of employing 4-4-5 calendar.

There are two options:

  • “nearest” means year end is weekday closest to last day of month in year.

  • “last” means year end is final weekday of the final month in fiscal year.

See also

DateOffset

Standard kind of date increment.

Examples

In the example below the default parameters give the next business quarter for 52-53 week fiscal year.

>>> ts = pd.Timestamp(2022, 1, 1)
>>> ts + pd.offsets.FY5253Quarter()
Timestamp('2022-01-31 00:00:00')

By the parameter startingMonth we can specify the month in which fiscal years end.

>>> ts = pd.Timestamp(2022, 1, 1)
>>> ts + pd.offsets.FY5253Quarter(startingMonth=3)
Timestamp('2022-03-28 00:00:00')

Business quarters for 52-53 week fiscal year can be specified by weekday and variation parameters.

>>> ts = pd.Timestamp(2022, 1, 1)
>>> ts + pd.offsets.FY5253Quarter(weekday=5, startingMonth=12, variation="last")
Timestamp('2022-04-02 00:00:00')

Attributes

base

Returns a copy of the calling offset object with n=1 and all other attributes equal.

freqstr

Return a string representing the frequency.

kwds

Return a dict of extra parameters for the offset.

n

name

Return a string representing the base frequency.

nanos

normalize

qtr_with_extra_week

rule_code

startingMonth

variation

weekday

Methods

copy()

Return a copy of the frequency.

get_rule_code_suffix()

get_weeks(dt)

is_month_end(ts)

Return boolean whether a timestamp occurs on the month end.

is_month_start(ts)

Return boolean whether a timestamp occurs on the month start.

is_on_offset(dt)

Return boolean whether a timestamp intersects with this frequency.

is_quarter_end(ts)

Return boolean whether a timestamp occurs on the quarter end.

is_quarter_start(ts)

Return boolean whether a timestamp occurs on the quarter start.

is_year_end(ts)

Return boolean whether a timestamp occurs on the year end.

is_year_start(ts)

Return boolean whether a timestamp occurs on the year start.

rollback(dt)

Roll provided date backward to next offset only if not on offset.

rollforward(dt)

Roll provided date forward to next offset only if not on offset.

year_has_extra_week(dt)