@@ -62,11 +62,8 @@ def df_letters():
6262
6363
6464@pytest .fixture
65- def raw_frame (multiindex_dataframe_random_data ):
66- df = multiindex_dataframe_random_data
67- df .iloc [1 , [1 , 2 ]] = np .nan
68- df .iloc [7 , [0 , 1 ]] = np .nan
69- return df
65+ def raw_frame ():
66+ return DataFrame ([0 ])
7067
7168
7269@pytest .mark .parametrize ("op" , AGG_FUNCTIONS )
@@ -84,14 +81,21 @@ def test_regression_allowlist_methods(raw_frame, op, axis, skipna, sort):
8481 frame = raw_frame .T
8582
8683 if op in AGG_FUNCTIONS_WITH_SKIPNA :
87- grouped = frame .groupby ("first" , axis = axis , sort = sort )
84+ grouped = frame .groupby (level = 0 , axis = axis , sort = sort )
8885 result = getattr (grouped , op )(skipna = skipna )
86+ expected = frame .groupby (level = 0 ).apply (
87+ lambda h : getattr (h , op )(axis = axis , skipna = skipna )
88+ )
89+ if sort :
90+ expected = expected .sort_index (axis = axis )
91+ tm .assert_frame_equal (result , expected )
8992 else :
90- grouped = frame .groupby ("first" , axis = axis , sort = sort )
93+ grouped = frame .groupby (level = 0 , axis = axis , sort = sort )
9194 result = getattr (grouped , op )()
92- # Previously compared to frame.op(level=...), but level removed in 2.0
93- # TODO(GH 49629): Assert something better
94- assert isinstance (result , DataFrame )
95+ expected = frame .groupby (level = 0 ).apply (lambda h : getattr (h , op )(axis = axis ))
96+ if sort :
97+ expected = expected .sort_index (axis = axis )
98+ tm .assert_frame_equal (result , expected )
9599
96100
97101def test_groupby_blocklist (df_letters ):
0 commit comments