Skip to content

Commit e8c2982

Browse files
committed
Add timedelta as possible freq parameter type to date_range() and bdate_range()
1 parent 95885b8 commit e8c2982

File tree

2 files changed

+21
-4
lines changed

2 files changed

+21
-4
lines changed

pandas-stubs/core/indexes/datetimes.pyi

+6-3
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
1-
from datetime import tzinfo
1+
from datetime import (
2+
timedelta,
3+
tzinfo,
4+
)
25
from typing import overload
36

47
import numpy as np
@@ -90,7 +93,7 @@ def date_range(
9093
start: str | DatetimeLike | None = ...,
9194
end: str | DatetimeLike | None = ...,
9295
periods: int | None = ...,
93-
freq: str | BaseOffset = ...,
96+
freq: str | timedelta | BaseOffset = ...,
9497
tz: str | tzinfo = ...,
9598
normalize: bool = ...,
9699
name: str | None = ...,
@@ -101,7 +104,7 @@ def bdate_range(
101104
start: str | DatetimeLike | None = ...,
102105
end: str | DatetimeLike | None = ...,
103106
periods: int | None = ...,
104-
freq: str | BaseOffset = ...,
107+
freq: str | timedelta | BaseOffset = ...,
105108
tz: str | tzinfo = ...,
106109
normalize: bool = ...,
107110
name: str | None = ...,

tests/test_timefuncs.py

+15-1
Original file line numberDiff line numberDiff line change
@@ -458,7 +458,6 @@ def test_timedeltaindex_accessors() -> None:
458458

459459
def test_some_offsets() -> None:
460460
# GH 222
461-
462461
check(
463462
assert_type(
464463
CustomBusinessDay(calendar=USFederalHolidayCalendar()), CustomBusinessDay
@@ -484,6 +483,21 @@ def test_some_offsets() -> None:
484483
)
485484
# GH 224
486485
check(assert_type(dt.date.today() - Day(), dt.date), dt.date)
486+
# GH 235
487+
check(
488+
assert_type(
489+
pd.date_range("1/1/2022", "2/1/2022", freq=dt.timedelta(days=2)),
490+
pd.DatetimeIndex,
491+
),
492+
pd.DatetimeIndex,
493+
)
494+
check(
495+
assert_type(
496+
pd.bdate_range("1/1/2022", "2/1/2022", freq=dt.timedelta(days=2)),
497+
pd.DatetimeIndex,
498+
),
499+
pd.DatetimeIndex,
500+
)
487501

488502

489503
def test_types_to_numpy() -> None:

0 commit comments

Comments
 (0)