Table Of Contents


Enter search terms or a module, class or function name.


class pandas.DatetimeIndex[source]

Immutable ndarray of datetime64 data, represented internally as int64, and which can be boxed to Timestamp objects that are subclasses of datetime and carry metadata such as frequency information.


data : array-like (1-dimensional), optional

Optional datetime-like data to construct index with

copy : bool

Make a copy of input ndarray

freq : string or pandas offset object, optional

One of pandas date offset strings or corresponding objects. The string ‘infer’ can be passed in order to set the frequency of the index as the inferred frequency upon creation

start : starting value, datetime-like, optional

If data is None, start is used as the start point in generating regular timestamp data.

periods : int, optional, > 0

Number of periods to generate, if generating index. Takes precedence over end argument

end : end time, datetime-like, optional

If periods is none, generated index will extend to first conforming time on or just past end argument

closed : string or None, default None

Make the interval closed with respect to the given frequency to the ‘left’, ‘right’, or both sides (None)

tz : pytz.timezone or

ambiguous : ‘infer’, bool-ndarray, ‘NaT’, default ‘raise’

When clocks moved backward due to DST, ambiguous times may arise. For example in Central European Time (UTC+01), when going from 03:00 DST to 02:00 non-DST, 02:30:00 local time occurs both at 00:30:00 UTC and at 01:30:00 UTC. In such a situation, the ambiguous parameter dictates how ambiguous times should be handled.

  • ‘infer’ will attempt to infer fall dst-transition hours based on order
  • bool-ndarray where True signifies a DST time, False signifies a non-DST time (note that this flag is only applicable for ambiguous times)
  • ‘NaT’ will return NaT where there are ambiguous times
  • ‘raise’ will raise an AmbiguousTimeError if there are ambiguous times

name : object

Name to be stored in the index

dayfirst : bool, default False

If True, parse dates in data with the day first order

yearfirst : bool, default False

If True parse dates in data with the year first order

See also

The base pandas Index type.
Index of timedelta64 data.
Index of Period data.
Convert argument to datetime.


To learn more about the frequency strings, please see this link.


year The year of the datetime
month The month as January=1, December=12
day The days of the datetime
hour The hours of the datetime
minute The minutes of the datetime
second The seconds of the datetime
microsecond The microseconds of the datetime
nanosecond The nanoseconds of the datetime
date Returns numpy array of python objects (namely, the date part of Timestamps without timezone information).
time Returns numpy array of datetime.time.
timetz Returns numpy array of datetime.time also containing timezone information.
dayofyear The ordinal day of the year.
weekofyear The week ordinal of the year
week The week ordinal of the year
dayofweek The day of the week with Monday=0, Sunday=6.
weekday The day of the week with Monday=0, Sunday=6.
quarter The quarter of the date.
tz Return timezone.
freq Return the frequency object if it is set, otherwise None.
freqstr Return the frequency object as a string if its set, otherwise None
is_month_start Indicates whether the date is the first day of the month.
is_month_end Indicates whether the date is the last day of the month.
is_quarter_start Indicator for whether the date is the first day of a quarter.
is_quarter_end Indicator for whether the date is the last day of a quarter.
is_year_start Indicate whether the date is the first day of a year.
is_year_end Indicate whether the date is the last day of the year.
is_leap_year Boolean indicator if the date belongs to a leap year.
inferred_freq Tryies to return a string representing a frequency guess, generated by infer_freq.


normalize(*args, **kwargs) Convert times to midnight.
strftime(date_format) Convert to Index using specified date_format.
snap([freq]) Snap time stamps to nearest occurring frequency
tz_convert(*args, **kwargs) Convert tz-aware Datetime Array/Index from one time zone to another.
tz_localize(*args, **kwargs) Localize tz-naive Datetime Array/Index to tz-aware Datetime Array/Index.
round(freq[, ambiguous, nonexistent]) Perform round operation on the data to the specified freq.
floor(freq[, ambiguous, nonexistent]) Perform floor operation on the data to the specified freq.
ceil(freq[, ambiguous, nonexistent]) Perform ceil operation on the data to the specified freq.
to_period(*args, **kwargs) Cast to PeriodArray/Index at a particular frequency.
to_perioddelta(*args, **kwargs) Calculate TimedeltaArray of difference between index values and index converted to PeriodArray at specified freq.
to_pydatetime() Return Datetime Array/Index as object ndarray of datetime.datetime objects
to_series([keep_tz, index, name]) Create a Series with both index and values equal to the index keys useful with map for returning an indexer based on an index
to_frame([index, name]) Create a DataFrame with a column containing the Index.
month_name(*args, **kwargs) Return the month names of the DateTimeIndex with specified locale.
day_name(*args, **kwargs) Return the day names of the DateTimeIndex with specified locale.
Scroll To Top