Skip to content

Commit 11b8d1a

Browse files
authored
BUG: getitem indexing wrong axis (#54641)
1 parent 0b58c62 commit 11b8d1a

File tree

2 files changed

+10
-1
lines changed

2 files changed

+10
-1
lines changed

pandas/core/indexing.py

+2-1
Original file line numberDiff line numberDiff line change
@@ -985,8 +985,9 @@ def _getitem_tuple_same_dim(self, tup: tuple):
985985
"""
986986
retval = self.obj
987987
# Selecting columns before rows is signficiantly faster
988+
start_val = (self.ndim - len(tup)) + 1
988989
for i, key in enumerate(reversed(tup)):
989-
i = self.ndim - i - 1
990+
i = self.ndim - i - start_val
990991
if com.is_null_slice(key):
991992
continue
992993

pandas/tests/frame/indexing/test_getitem.py

+8
Original file line numberDiff line numberDiff line change
@@ -458,6 +458,14 @@ def test_getitem_datetime_slice(self):
458458
):
459459
df["2011-01-01":"2011-11-01"]
460460

461+
def test_getitem_slice_same_dim_only_one_axis(self):
462+
# GH#54622
463+
df = DataFrame(np.random.default_rng(2).standard_normal((10, 8)))
464+
result = df.iloc[(slice(None, None, 2),)]
465+
assert result.shape == (5, 8)
466+
expected = df.iloc[slice(None, None, 2), slice(None)]
467+
tm.assert_frame_equal(result, expected)
468+
461469

462470
class TestGetitemDeprecatedIndexers:
463471
@pytest.mark.parametrize("key", [{"a", "b"}, {"a": "a"}])

0 commit comments

Comments
 (0)