pandas 1.4.2

ParametersBackRef

Works exactly like the keyword argument form of relativedelta. Note that the positional argument form of relativedelata is not supported. Use of the keyword n is discouraged-- you would be better off specifying n in the keywords you use, but regardless it is there for you. n is needed for DateOffset subclasses.

DateOffset works as follows. Each offset specify a set of dates that conform to the DateOffset. For example, Bday defines this set to be the set of dates that are weekdays (M-F). To test if a date is in the set of a DateOffset dateOffset we can use the is_on_offset method: dateOffset.is_on_offset(date).

If a date is not on a valid date, the rollback and rollforward methods can be used to roll the date to the nearest valid date before/after the date.

DateOffsets can be created to move dates forward a given number of valid dates. For example, Bday(2) can be added to a date to move it two business days forward. If the date does not start on a valid date, first it is moved to a valid date. Thus pseudo code is:

def __add__(date):

date = rollback(date) # does nothing if date is valid return date + <n number of periods>

When a date offset is created for a negative number of periods, the date is first rolled forward. The pseudo code is:

def __add__(date):

date = rollforward(date) # does nothing is date is valid return date + <n number of periods>

Zero presents a problem. Should it roll forward or back? We arbitrarily have it rollforward:

date + BDay(0) == BDay.rollforward(date)

Since 0 is a bit weird, we suggest avoiding its use.

Parameters

n : int, default 1

The number of time periods the offset represents. If specified without a temporal pattern, defaults to n days.

normalize : bool, default False

Whether to round the result of a DateOffset addition down to the previous midnight.

**kwds :

Temporal parameter that add to or replace the offset value.

Parameters that add to the offset (like Timedelta):

  • years

  • months

  • weeks

  • days

  • hours

  • minutes

  • seconds

  • microseconds

  • nanoseconds

Parameters that replace the offset value:

  • year

  • month

  • day

  • weekday

  • hour

  • minute

  • second

  • microsecond

  • nanosecond.

Standard kind of date increment used for a date range.

See Also

dateutil.relativedelta.relativedelta

The relativedelta type is designed to be applied to an existing datetime an can replace specific components of that datetime, or represents an interval of time.

Examples

This example is valid syntax, but we were not able to check execution
>>> from pandas.tseries.offsets import DateOffset
... ts = pd.Timestamp('2017-01-01 09:10:11')
... ts + DateOffset(months=3) Timestamp('2017-04-01 09:10:11')
This example is valid syntax, but we were not able to check execution
>>> ts = pd.Timestamp('2017-01-01 09:10:11')
... ts + DateOffset(months=2) Timestamp('2017-03-01 09:10:11')
See :

Back References

The following pages refer to to this document either explicitly or contain code examples using this.

pandas._libs.tslibs.offsets.DateOffset

Local connectivity graph

Hover to see nodes names; edges to Self not shown, Caped at 50 nodes.

Using a canvas is more power efficient and can get hundred of nodes ; but does not allow hyperlinks; , arrows or text (beyond on hover)

SVG is more flexible but power hungry; and does not scale well to 50 + nodes.

All aboves nodes referred to, (or are referred from) current nodes; Edges from Self to other have been omitted (or all nodes would be connected to the central node "self" which is not useful). Nodes are colored by the library they belong to, and scaled with the number of references pointing them


File: /pandas/_libs/tslibs/offsets.cpython-39-darwin.so#None
type: <class 'pandas._libs.tslibs.offsets.OffsetMeta'>
Commit: