diff --git a/pandas/core/indexes/datetimes.py b/pandas/core/indexes/datetimes.py index b91fbb8244cb5..42e2015f0f0f8 100644 --- a/pandas/core/indexes/datetimes.py +++ b/pandas/core/indexes/datetimes.py @@ -966,7 +966,7 @@ def date_range( Right bound for generating dates. periods : int, optional Number of periods to generate. - freq : str or DateOffset, default 'D' + freq : str, datetime.timedelta, or DateOffset, default 'D' Frequency strings can have multiples, e.g. '5H'. See :ref:`here ` for a list of frequency aliases. @@ -1163,7 +1163,7 @@ def bdate_range( Right bound for generating dates. periods : int, default None Number of periods to generate. - freq : str or DateOffset, default 'B' (business daily) + freq : str, datetime.timedelta, or DateOffset, default 'B' (business daily) Frequency strings can have multiples, e.g. '5H'. tz : str or None Time zone name for returning localized DatetimeIndex, for example diff --git a/pandas/core/indexes/interval.py b/pandas/core/indexes/interval.py index e686e8453f0d9..1d620fbe6d3a3 100644 --- a/pandas/core/indexes/interval.py +++ b/pandas/core/indexes/interval.py @@ -969,7 +969,7 @@ def interval_range( Right bound for generating intervals. periods : int, default None Number of periods to generate. - freq : numeric, str, or DateOffset, default None + freq : numeric, str, datetime.timedelta, or DateOffset, default None The length of each interval. Must be consistent with the type of start and end, e.g. 2 for numeric, or '5H' for datetime-like. Default is 1 for numeric and 'D' for datetime-like. diff --git a/pandas/tests/indexes/datetimes/test_date_range.py b/pandas/tests/indexes/datetimes/test_date_range.py index 5f4f941057b55..142679e292b38 100644 --- a/pandas/tests/indexes/datetimes/test_date_range.py +++ b/pandas/tests/indexes/datetimes/test_date_range.py @@ -432,6 +432,13 @@ def test_date_range_businesshour(self): rng = date_range("2014-07-04 09:00", "2014-07-08 16:00", freq="BH") tm.assert_index_equal(idx, rng) + def test_date_range_timedelta(self): + start = "2020-01-01" + end = "2020-01-11" + rng1 = date_range(start, end, freq="3D") + rng2 = date_range(start, end, freq=timedelta(days=3)) + tm.assert_index_equal(rng1, rng2) + def test_range_misspecified(self): # GH #1095 msg = (