43
43
)
44
44
from pandas .core .dtypes .common import (
45
45
ensure_platform_int ,
46
- is_datetime_or_timedelta_dtype ,
47
46
is_dtype_equal ,
48
47
is_float ,
49
48
is_float_dtype ,
53
52
is_number ,
54
53
is_object_dtype ,
55
54
is_scalar ,
55
+ pandas_dtype ,
56
56
)
57
57
from pandas .core .dtypes .dtypes import (
58
58
DatetimeTZDtype ,
115
115
def _get_next_label (label ):
116
116
dtype = getattr (label , "dtype" , type (label ))
117
117
if isinstance (label , (Timestamp , Timedelta )):
118
- dtype = "datetime64"
119
- if is_datetime_or_timedelta_dtype (dtype ) or isinstance (dtype , DatetimeTZDtype ):
118
+ dtype = "datetime64[ns]"
119
+ dtype = pandas_dtype (dtype )
120
+
121
+ if lib .is_np_dtype (dtype , "mM" ) or isinstance (dtype , DatetimeTZDtype ):
120
122
return label + np .timedelta64 (1 , "ns" )
121
123
elif is_integer_dtype (dtype ):
122
124
return label + 1
@@ -129,8 +131,10 @@ def _get_next_label(label):
129
131
def _get_prev_label (label ):
130
132
dtype = getattr (label , "dtype" , type (label ))
131
133
if isinstance (label , (Timestamp , Timedelta )):
132
- dtype = "datetime64"
133
- if is_datetime_or_timedelta_dtype (dtype ) or isinstance (dtype , DatetimeTZDtype ):
134
+ dtype = "datetime64[ns]"
135
+ dtype = pandas_dtype (dtype )
136
+
137
+ if lib .is_np_dtype (dtype , "mM" ) or isinstance (dtype , DatetimeTZDtype ):
134
138
return label - np .timedelta64 (1 , "ns" )
135
139
elif is_integer_dtype (dtype ):
136
140
return label - 1
0 commit comments