diff --git a/pandas/tests/test_multilevel.py b/pandas/tests/test_multilevel.py index f0928820367e9..44829423be1bb 100644 --- a/pandas/tests/test_multilevel.py +++ b/pandas/tests/test_multilevel.py @@ -583,6 +583,17 @@ def test_stack_unstack_wrong_level_name(self, method): with pytest.raises(KeyError, match="does not match index name"): getattr(s, method)("mistake") + def test_unused_level_raises(self): + # GH 20410 + mi = MultiIndex( + levels=[["a_lot", "onlyone", "notevenone"], [1970, ""]], + codes=[[1, 0], [1, 0]], + ) + df = DataFrame(-1, index=range(3), columns=mi) + + with pytest.raises(KeyError, match="notevenone"): + df["notevenone"] + def test_unstack_level_name(self): result = self.frame.unstack("second") expected = self.frame.unstack(level=1)