Skip to content

Commit 5b0a8b0

Browse files
sinhrksjorisvandenbossche
authored andcommitted
CLN: move _na_value to DatetimeIndexOpsMixin (#13997)
1 parent a0d05db commit 5b0a8b0

File tree

5 files changed

+15
-10
lines changed

5 files changed

+15
-10
lines changed

pandas/tseries/base.py

+3
Original file line numberDiff line numberDiff line change
@@ -353,6 +353,9 @@ def get_duplicates(self):
353353
values = Index.get_duplicates(self)
354354
return self._simple_new(values)
355355

356+
_na_value = tslib.NaT
357+
"""The expected NA value to use with this index."""
358+
356359
@cache_readonly
357360
def _isnan(self):
358361
""" return if each value is nan"""

pandas/tseries/index.py

-3
Original file line numberDiff line numberDiff line change
@@ -667,9 +667,6 @@ def _mpl_repr(self):
667667
# how to represent ourselves to matplotlib
668668
return tslib.ints_to_pydatetime(self.asi8, self.tz)
669669

670-
_na_value = tslib.NaT
671-
"""The expected NA value to use with this index."""
672-
673670
@cache_readonly
674671
def _is_dates_only(self):
675672
from pandas.formats.format import _is_dates_only

pandas/tseries/period.py

-4
Original file line numberDiff line numberDiff line change
@@ -320,10 +320,6 @@ def _coerce_scalar_to_index(self, item):
320320
"""
321321
return PeriodIndex([item], **self._get_attributes_dict())
322322

323-
@property
324-
def _na_value(self):
325-
return self._box_func(tslib.iNaT)
326-
327323
def __contains__(self, key):
328324
if isinstance(key, Period):
329325
if key.freq != self.freq:

pandas/tseries/tdi.py

-3
Original file line numberDiff line numberDiff line change
@@ -282,9 +282,6 @@ def _simple_new(cls, values, name=None, freq=None, **kwargs):
282282
result._reset_identity()
283283
return result
284284

285-
_na_value = tslib.NaT
286-
"""The expected NA value to use with this index."""
287-
288285
@property
289286
def _formatter_func(self):
290287
from pandas.formats.format import _get_format_timedelta64

pandas/tseries/tests/test_base.py

+12
Original file line numberDiff line numberDiff line change
@@ -798,6 +798,10 @@ def test_shift(self):
798798
'2011-01-01 09:00'], name='xxx', tz=tz)
799799
tm.assert_index_equal(idx.shift(-3, freq='H'), exp)
800800

801+
def test_na_value(self):
802+
self.assertIs(pd.DatetimeIndex._na_value, pd.NaT)
803+
self.assertIs(pd.DatetimeIndex([])._na_value, pd.NaT)
804+
801805

802806
class TestTimedeltaIndexOps(Ops):
803807
def setUp(self):
@@ -1641,6 +1645,10 @@ def test_repeat(self):
16411645
tm.assert_index_equal(res, exp)
16421646
self.assertIsNone(res.freq)
16431647

1648+
def test_na_value(self):
1649+
self.assertIs(pd.TimedeltaIndex._na_value, pd.NaT)
1650+
self.assertIs(pd.TimedeltaIndex([])._na_value, pd.NaT)
1651+
16441652

16451653
class TestPeriodIndexOps(Ops):
16461654
def setUp(self):
@@ -2581,6 +2589,10 @@ def test_repeat(self):
25812589
for res in [index.repeat(3), np.repeat(index, 3)]:
25822590
tm.assert_index_equal(res, exp)
25832591

2592+
def test_na_value(self):
2593+
self.assertIs(pd.PeriodIndex._na_value, pd.NaT)
2594+
self.assertIs(pd.PeriodIndex([], freq='M')._na_value, pd.NaT)
2595+
25842596

25852597
if __name__ == '__main__':
25862598
import nose

0 commit comments

Comments
 (0)