Skip to content

Commit b29d58d

Browse files
jbrockmendeljreback
authored andcommitted
REF: change TDI.delete behavior to match DTI.delete (#30655)
1 parent fffb978 commit b29d58d

File tree

2 files changed

+9
-2
lines changed

2 files changed

+9
-2
lines changed

pandas/core/indexes/timedeltas.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -493,7 +493,7 @@ def delete(self, loc):
493493
"""
494494
new_tds = np.delete(self.asi8, loc)
495495

496-
freq = "infer"
496+
freq = None
497497
if is_integer(loc):
498498
if loc in (0, -len(self), -1, len(self) - 1):
499499
freq = self.freq
@@ -504,7 +504,7 @@ def delete(self, loc):
504504
if loc.start in (0, None) or loc.stop in (len(self), None):
505505
freq = self.freq
506506

507-
return TimedeltaIndex(new_tds, name=self.name, freq=freq)
507+
return self._shallow_copy(new_tds, freq=freq)
508508

509509

510510
TimedeltaIndex._add_comparison_ops()

pandas/tests/indexes/timedeltas/test_timedelta.py

+7
Original file line numberDiff line numberDiff line change
@@ -201,6 +201,13 @@ def test_append_numpy_bug_1681(self):
201201
result = a.append(c)
202202
assert (result["B"] == td).all()
203203

204+
def test_delete_doesnt_infer_freq(self):
205+
# GH#30655 behavior matches DatetimeIndex
206+
207+
tdi = pd.TimedeltaIndex(["1 Day", "2 Days", None, "3 Days", "4 Days"])
208+
result = tdi.delete(2)
209+
assert result.freq is None
210+
204211
def test_fields(self):
205212
rng = timedelta_range("1 days, 10:11:12.100123456", periods=2, freq="s")
206213
tm.assert_index_equal(rng.days, Index([1, 1], dtype="int64"))

0 commit comments

Comments
 (0)