xarray.cftime_range¶
-
xarray.
cftime_range
(start=None, end=None, periods=None, freq='D', normalize=False, name=None, closed=None, calendar='standard')¶ Return a fixed frequency CFTimeIndex.
- Parameters
start (str or cftime.datetime, optional) – Left bound for generating dates.
end (str or cftime.datetime, optional) – Right bound for generating dates.
periods (integer, optional) – Number of periods to generate.
freq (str, default 'D', BaseCFTimeOffset, or None) – Frequency strings can have multiples, e.g. ‘5H’.
normalize (bool, default False) – Normalize start/end dates to midnight before generating date range.
name (str, default None) – Name of the resulting index
closed ({None, 'left', 'right'}, optional) – Make the interval closed with respect to the given frequency to the ‘left’, ‘right’, or both sides (None, the default).
calendar (str) – Calendar type for the datetimes (default ‘standard’).
- Returns
- Return type
Notes
This function is an analog of
pandas.date_range
for use in generating sequences ofcftime.datetime
objects. It supports most of the features ofpandas.date_range
(e.g. specifying how the index isclosed
on either side, or whether or not tonormalize
the start and end bounds); however, there are some notable exceptions:You cannot specify a
tz
(time zone) argument.Start or end dates specified as partial-datetime strings must use the ISO-8601 format.
It supports many, but not all, frequencies supported by
pandas.date_range
. For example it does not currently support any of the business-related, semi-monthly, or sub-second frequencies.Compound sub-monthly frequencies are not supported, e.g. ‘1H1min’, as these can easily be written in terms of the finest common resolution, e.g. ‘61min’.
Valid simple frequency strings for use with
cftime
-calendars include any multiples of the following.Alias
Description
A, Y
Year-end frequency
AS, YS
Year-start frequency
Q
Quarter-end frequency
QS
Quarter-start frequency
M
Month-end frequency
MS
Month-start frequency
D
Day frequency
H
Hour frequency
T, min
Minute frequency
S
Second frequency
Any multiples of the following anchored offsets are also supported.
Alias
Description
A(S)-JAN
Annual frequency, anchored at the end (or beginning) of January
A(S)-FEB
Annual frequency, anchored at the end (or beginning) of February
A(S)-MAR
Annual frequency, anchored at the end (or beginning) of March
A(S)-APR
Annual frequency, anchored at the end (or beginning) of April
A(S)-MAY
Annual frequency, anchored at the end (or beginning) of May
A(S)-JUN
Annual frequency, anchored at the end (or beginning) of June
A(S)-JUL
Annual frequency, anchored at the end (or beginning) of July
A(S)-AUG
Annual frequency, anchored at the end (or beginning) of August
A(S)-SEP
Annual frequency, anchored at the end (or beginning) of September
A(S)-OCT
Annual frequency, anchored at the end (or beginning) of October
A(S)-NOV
Annual frequency, anchored at the end (or beginning) of November
A(S)-DEC
Annual frequency, anchored at the end (or beginning) of December
Q(S)-JAN
Quarter frequency, anchored at the end (or beginning) of January
Q(S)-FEB
Quarter frequency, anchored at the end (or beginning) of February
Q(S)-MAR
Quarter frequency, anchored at the end (or beginning) of March
Q(S)-APR
Quarter frequency, anchored at the end (or beginning) of April
Q(S)-MAY
Quarter frequency, anchored at the end (or beginning) of May
Q(S)-JUN
Quarter frequency, anchored at the end (or beginning) of June
Q(S)-JUL
Quarter frequency, anchored at the end (or beginning) of July
Q(S)-AUG
Quarter frequency, anchored at the end (or beginning) of August
Q(S)-SEP
Quarter frequency, anchored at the end (or beginning) of September
Q(S)-OCT
Quarter frequency, anchored at the end (or beginning) of October
Q(S)-NOV
Quarter frequency, anchored at the end (or beginning) of November
Q(S)-DEC
Quarter frequency, anchored at the end (or beginning) of December
Finally, the following calendar aliases are supported.
Alias
Date type
standard, gregorian
cftime.DatetimeGregorian
proleptic_gregorian
cftime.DatetimeProlepticGregorian
noleap, 365_day
cftime.DatetimeNoLeap
all_leap, 366_day
cftime.DatetimeAllLeap
360_day
cftime.Datetime360Day
julian
cftime.DatetimeJulian
Examples
This function returns a
CFTimeIndex
, populated withcftime.datetime
objects associated with the specified calendar type, e.g.>>> xr.cftime_range(start='2000', periods=6, freq='2MS', calendar='noleap') CFTimeIndex([2000-01-01 00:00:00, 2000-03-01 00:00:00, 2000-05-01 00:00:00, 2000-07-01 00:00:00, 2000-09-01 00:00:00, 2000-11-01 00:00:00], dtype='object')
As in the standard pandas function, three of the
start
,end
,periods
, orfreq
arguments must be specified at a given time, with the other set toNone
. See the pandas documentation for more examples of the behavior ofdate_range
with each of the parameters.See also