Skip to content

Commit c07d1be

Browse files
committed
BUG: Change the location of checking a single-level selection from MultiIndex
1 parent 5567ac1 commit c07d1be

File tree

1 file changed

+8
-7
lines changed

1 file changed

+8
-7
lines changed

pandas/core/groupby.py

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2613,13 +2613,6 @@ def _get_grouper(obj, key=None, axis=0, level=None, sort=True,
26132613

26142614
level = None
26152615
key = group_axis
2616-
elif key is None:
2617-
if is_list_like(level) and len(level) == 1:
2618-
level = level[0]
2619-
2620-
if is_scalar(level):
2621-
key = group_axis.get_level_values(level)
2622-
level = None
26232616

26242617
# a passed-in Grouper, directly convert
26252618
if isinstance(key, Grouper):
@@ -2633,6 +2626,14 @@ def _get_grouper(obj, key=None, axis=0, level=None, sort=True,
26332626
elif isinstance(key, BaseGrouper):
26342627
return key, [], obj
26352628

2629+
if key is None and isinstance(group_axis, MultiIndex):
2630+
if is_list_like(level) and len(level) == 1:
2631+
level = level[0]
2632+
2633+
if level is not None and is_scalar(level):
2634+
key = group_axis.get_level_values(level)
2635+
level = None
2636+
26362637
if not isinstance(key, (tuple, list)):
26372638
keys = [key]
26382639
match_axis_length = False

0 commit comments

Comments
 (0)