@@ -658,7 +658,7 @@ def _aggregate_series_fast(self, obj: Series, func):
658658 group_index , _ , ngroups = self .group_info
659659
660660 # avoids object / Series creation overhead
661- dummy = obj ._get_values ( slice ( None , 0 ))
661+ dummy = obj .iloc [: 0 ]
662662 indexer = get_group_index_sorter (group_index , ngroups )
663663 obj = obj .take (indexer )
664664 group_index = algorithms .take_nd (group_index , indexer , allow_fill = False )
@@ -780,7 +780,11 @@ def get_iterator(self, data: FrameOrSeries, axis: int = 0):
780780 Generator yielding sequence of (name, subsetted object)
781781 for each group
782782 """
783- slicer = lambda start , edge : data ._slice (slice (start , edge ), axis = axis )
783+ if axis == 0 :
784+ slicer = lambda start , edge : data .iloc [start :edge ]
785+ else :
786+ slicer = lambda start , edge : data .iloc [:, start :edge ]
787+
784788 length = len (data .axes [axis ])
785789
786790 start = 0
@@ -919,7 +923,7 @@ def _chop(self, sdata, slice_obj: slice) -> NDFrame:
919923
920924class SeriesSplitter (DataSplitter ):
921925 def _chop (self , sdata : Series , slice_obj : slice ) -> Series :
922- return sdata ._get_values ( slice_obj )
926+ return sdata .iloc [ slice_obj ]
923927
924928
925929class FrameSplitter (DataSplitter ):
@@ -934,7 +938,7 @@ def _chop(self, sdata: DataFrame, slice_obj: slice) -> DataFrame:
934938 if self .axis == 0 :
935939 return sdata .iloc [slice_obj ]
936940 else :
937- return sdata ._slice ( slice_obj , axis = 1 )
941+ return sdata .iloc [:, slice_obj ]
938942
939943
940944def get_splitter (data : FrameOrSeries , * args , ** kwargs ) -> DataSplitter :
0 commit comments