Skip to main content
`Ctrl`+`K`

# 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:
    n int

      The number of business quarters represented.

    normalize bool, default False

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

    weekday int {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.

    startingMonth int {1, 2, …, 12}, default 1

      The month in which fiscal years end.

    qtr_with_extra_week int {1, 2, 3, 4}, default 1

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

    variation str, 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_anchored`() | Return boolean whether the frequency is a unit frequency (n=1).
  `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) |