@@ -591,12 +591,6 @@ def _get_label(self, label, axis: int):
591591
592592 return self .obj ._xs (label , axis = axis )
593593
594- def _get_loc (self , key : int , axis : int ):
595- return self .obj ._ixs (key , axis = axis )
596-
597- def _slice (self , obj , axis : int , kind = None ):
598- return self .obj ._slice (obj , axis = axis , kind = kind )
599-
600594 def _get_setitem_indexer (self , key ):
601595 if self .axis is not None :
602596 return self ._convert_tuple (key , is_setter = True )
@@ -702,17 +696,6 @@ def _convert_tuple(self, key, is_setter: bool = False):
702696 keyidx .append (idx )
703697 return tuple (keyidx )
704698
705- def _convert_scalar_indexer (self , key , axis : int ):
706- # if we are accessing via lowered dim, use the last dim
707- ax = self .obj ._get_axis (min (axis , self .ndim - 1 ))
708- # a scalar
709- return ax ._convert_scalar_indexer (key , kind = self .name )
710-
711- def _convert_slice_indexer (self , key : slice , axis : int ):
712- # if we are accessing via lowered dim, use the last dim
713- ax = self .obj ._get_axis (min (axis , self .ndim - 1 ))
714- return ax ._convert_slice_indexer (key , kind = self .name )
715-
716699 def _has_valid_setitem_indexer (self , indexer ) -> bool :
717700 return True
718701
@@ -1627,7 +1610,8 @@ def _validate_key(self, key, axis: int):
16271610 return
16281611
16291612 if not is_list_like_indexer (key ):
1630- self ._convert_scalar_indexer (key , axis )
1613+ labels = self .obj ._get_axis (axis )
1614+ labels ._convert_scalar_indexer (key , kind = "loc" )
16311615
16321616 def _is_scalar_access (self , key : Tuple ) -> bool :
16331617 """
@@ -1772,7 +1756,7 @@ def _get_slice_axis(self, slice_obj: slice, axis: int):
17721756 )
17731757
17741758 if isinstance (indexer , slice ):
1775- return self ._slice (indexer , axis = axis , kind = "iloc" )
1759+ return self .obj . _slice (indexer , axis = axis , kind = "iloc" )
17761760 else :
17771761 # DatetimeIndex overrides Index.slice_indexer and may
17781762 # return a DatetimeIndex instead of a slice object.
@@ -1796,12 +1780,12 @@ def _convert_to_indexer(self, key, axis: int, is_setter: bool = False):
17961780 labels = self .obj ._get_axis (axis )
17971781
17981782 if isinstance (key , slice ):
1799- return self ._convert_slice_indexer (key , axis )
1783+ return labels ._convert_slice_indexer (key , kind = "loc" )
18001784
18011785 if is_scalar (key ):
18021786 # try to find out correct indexer, if not type correct raise
18031787 try :
1804- key = self ._convert_scalar_indexer (key , axis )
1788+ key = labels ._convert_scalar_indexer (key , kind = "loc" )
18051789 except TypeError :
18061790 # but we will allow setting
18071791 if not is_setter :
@@ -2025,7 +2009,7 @@ def _getitem_axis(self, key, axis: int):
20252009 # validate the location
20262010 self ._validate_integer (key , axis )
20272011
2028- return self ._get_loc (key , axis = axis )
2012+ return self .obj . _ixs (key , axis = axis )
20292013
20302014 def _get_slice_axis (self , slice_obj : slice , axis : int ):
20312015 # caller is responsible for ensuring non-None axis
@@ -2034,19 +2018,22 @@ def _get_slice_axis(self, slice_obj: slice, axis: int):
20342018 if not need_slice (slice_obj ):
20352019 return obj .copy (deep = False )
20362020
2037- indexer = self ._convert_slice_indexer (slice_obj , axis )
2038- return self ._slice (indexer , axis = axis , kind = "iloc" )
2021+ labels = obj ._get_axis (axis )
2022+ indexer = labels ._convert_slice_indexer (slice_obj , kind = "iloc" )
2023+ return self .obj ._slice (indexer , axis = axis , kind = "iloc" )
20392024
20402025 def _convert_to_indexer (self , key , axis : int , is_setter : bool = False ):
20412026 """
20422027 Much simpler as we only have to deal with our valid types.
20432028 """
2029+ labels = self .obj ._get_axis (axis )
2030+
20442031 # make need to convert a float key
20452032 if isinstance (key , slice ):
2046- return self ._convert_slice_indexer (key , axis )
2033+ return labels ._convert_slice_indexer (key , kind = "iloc" )
20472034
20482035 elif is_float (key ):
2049- return self ._convert_scalar_indexer (key , axis )
2036+ return labels ._convert_scalar_indexer (key , kind = "iloc" )
20502037
20512038 self ._validate_key (key , axis )
20522039 return key
0 commit comments