@@ -223,7 +223,7 @@ def _validate_key(self, key, axis: int):
223223 """
224224 raise AbstractMethodError (self )
225225
226- def _has_valid_tuple (self , key ):
226+ def _has_valid_tuple (self , key : Tuple ):
227227 """ check the key for valid keys across my indexer """
228228 for i , k in enumerate (key ):
229229 if i >= self .obj .ndim :
@@ -236,7 +236,7 @@ def _has_valid_tuple(self, key):
236236 "[{types}] types" .format (types = self ._valid_types )
237237 )
238238
239- def _is_nested_tuple_indexer (self , tup ):
239+ def _is_nested_tuple_indexer (self , tup : Tuple ):
240240 if any (isinstance (ax , MultiIndex ) for ax in self .obj .axes ):
241241 return any (is_nested_tuple (tup , ax ) for ax in self .obj .axes )
242242 return False
@@ -260,7 +260,7 @@ def _convert_tuple(self, key, is_setter: bool = False):
260260 keyidx .append (idx )
261261 return tuple (keyidx )
262262
263- def _convert_range (self , key , is_setter : bool = False ):
263+ def _convert_range (self , key : range , is_setter : bool = False ):
264264 """ convert a range argument """
265265 return list (key )
266266
@@ -270,7 +270,7 @@ def _convert_scalar_indexer(self, key, axis: int):
270270 # a scalar
271271 return ax ._convert_scalar_indexer (key , kind = self .name )
272272
273- def _convert_slice_indexer (self , key , axis : int ):
273+ def _convert_slice_indexer (self , key : slice , axis : int ):
274274 # if we are accessing via lowered dim, use the last dim
275275 ax = self .obj ._get_axis (min (axis , self .ndim - 1 ))
276276 return ax ._convert_slice_indexer (key , kind = self .name )
@@ -484,7 +484,7 @@ def setter(item, v):
484484 if is_list_like_indexer (value ) and getattr (value , "ndim" , 1 ) > 0 :
485485
486486 # we have an equal len Frame
487- if isinstance (value , ABCDataFrame ) and value . ndim > 1 :
487+ if isinstance (value , ABCDataFrame ):
488488 sub_indexer = list (indexer )
489489 multiindex_indexer = isinstance (labels , MultiIndex )
490490
@@ -638,27 +638,23 @@ def _setitem_with_indexer_missing(self, indexer, value):
638638 self .obj ._maybe_update_cacher (clear = True )
639639 return self .obj
640640
641- def _align_series (self , indexer , ser , multiindex_indexer = False ):
641+ def _align_series (self , indexer , ser : ABCSeries , multiindex_indexer : bool = False ):
642642 """
643643 Parameters
644644 ----------
645645 indexer : tuple, slice, scalar
646646 The indexer used to get the locations that will be set to
647647 `ser`
648-
649648 ser : pd.Series
650649 The values to assign to the locations specified by `indexer`
651-
652650 multiindex_indexer : boolean, optional
653651 Defaults to False. Should be set to True if `indexer` was from
654652 a `pd.MultiIndex`, to avoid unnecessary broadcasting.
655653
656-
657654 Returns
658655 -------
659656 `np.array` of `ser` broadcast to the appropriate shape for assignment
660657 to the locations selected by `indexer`
661-
662658 """
663659 if isinstance (indexer , (slice , np .ndarray , list , Index )):
664660 indexer = tuple ([indexer ])
@@ -734,7 +730,7 @@ def ravel(i):
734730
735731 raise ValueError ("Incompatible indexer with Series" )
736732
737- def _align_frame (self , indexer , df ):
733+ def _align_frame (self , indexer , df : ABCDataFrame ):
738734 is_frame = self .obj .ndim == 2
739735
740736 if isinstance (indexer , tuple ):
@@ -786,7 +782,7 @@ def _align_frame(self, indexer, df):
786782
787783 raise ValueError ("Incompatible indexer with DataFrame" )
788784
789- def _getitem_tuple (self , tup ):
785+ def _getitem_tuple (self , tup : Tuple ):
790786 try :
791787 return self ._getitem_lowerdim (tup )
792788 except IndexingError :
@@ -809,7 +805,7 @@ def _getitem_tuple(self, tup):
809805
810806 return retval
811807
812- def _multi_take_opportunity (self , tup ):
808+ def _multi_take_opportunity (self , tup : Tuple ):
813809 """
814810 Check whether there is the possibility to use ``_multi_take``.
815811 Currently the limit is that all axes being indexed must be indexed with
@@ -833,7 +829,7 @@ def _multi_take_opportunity(self, tup):
833829
834830 return True
835831
836- def _multi_take (self , tup ):
832+ def _multi_take (self , tup : Tuple ):
837833 """
838834 Create the indexers for the passed tuple of keys, and execute the take
839835 operation. This allows the take operation to be executed all at once -
@@ -859,7 +855,7 @@ def _multi_take(self, tup):
859855 def _convert_for_reindex (self , key , axis : int ):
860856 return key
861857
862- def _handle_lowerdim_multi_index_axis0 (self , tup ):
858+ def _handle_lowerdim_multi_index_axis0 (self , tup : Tuple ):
863859 # we have an axis0 multi-index, handle or raise
864860 axis = self .axis or 0
865861 try :
@@ -884,7 +880,7 @@ def _handle_lowerdim_multi_index_axis0(self, tup):
884880
885881 return None
886882
887- def _getitem_lowerdim (self , tup ):
883+ def _getitem_lowerdim (self , tup : Tuple ):
888884
889885 # we can directly get the axis result since the axis is specified
890886 if self .axis is not None :
@@ -948,7 +944,7 @@ def _getitem_lowerdim(self, tup):
948944
949945 raise IndexingError ("not applicable" )
950946
951- def _getitem_nested_tuple (self , tup ):
947+ def _getitem_nested_tuple (self , tup : Tuple ):
952948 # we have a nested tuple so have at least 1 multi-index level
953949 # we should be able to match up the dimensionality here
954950
@@ -1422,7 +1418,7 @@ def _getbool_axis(self, key, axis: int):
14221418 # caller is responsible for ensuring non-None axis
14231419 labels = self .obj ._get_axis (axis )
14241420 key = check_bool_indexer (labels , key )
1425- inds , = key .nonzero ()
1421+ inds = key .nonzero ()[ 0 ]
14261422 try :
14271423 return self .obj .take (inds , axis = axis )
14281424 except Exception as detail :
@@ -2037,7 +2033,7 @@ def _getitem_scalar(self, key):
20372033 values = self .obj ._get_value (* key , takeable = True )
20382034 return values
20392035
2040- def _validate_integer (self , key , axis ):
2036+ def _validate_integer (self , key : int , axis : int ):
20412037 """
20422038 Check that 'key' is a valid position in the desired axis.
20432039
@@ -2062,7 +2058,7 @@ def _validate_integer(self, key, axis):
20622058 if key >= len_axis or key < - len_axis :
20632059 raise IndexError ("single positional indexer is out-of-bounds" )
20642060
2065- def _getitem_tuple (self , tup ):
2061+ def _getitem_tuple (self , tup : Tuple ):
20662062
20672063 self ._has_valid_tuple (tup )
20682064 try :
@@ -2160,7 +2156,7 @@ class _ScalarAccessIndexer(_NDFrameIndexer):
21602156 """ access scalars quickly """
21612157
21622158 def _convert_key (self , key , is_setter : bool = False ):
2163- return list ( key )
2159+ raise AbstractMethodError ( self )
21642160
21652161 def __getitem__ (self , key ):
21662162 if not isinstance (key , tuple ):
0 commit comments