|
32 | 32 |
|
33 | 33 | import pandas as pd
|
34 | 34 | from pandas import (
|
35 |
| - Index, |
36 | 35 | IndexSlice,
|
37 | 36 | RangeIndex,
|
38 | 37 | )
|
|
58 | 57 | Tooltips,
|
59 | 58 | maybe_convert_css_to_tuples,
|
60 | 59 | non_reducing_slice,
|
| 60 | + refactor_levels, |
61 | 61 | )
|
62 | 62 |
|
63 | 63 | try:
|
@@ -1388,7 +1388,7 @@ def _apply_index(
|
1388 | 1388 | axis = self.data._get_axis_number(axis)
|
1389 | 1389 | obj = self.index if axis == 0 else self.columns
|
1390 | 1390 |
|
1391 |
| - levels_ = _refactor_levels(level, obj) |
| 1391 | + levels_ = refactor_levels(level, obj) |
1392 | 1392 | data = DataFrame(obj.to_list()).loc[:, levels_]
|
1393 | 1393 |
|
1394 | 1394 | if method == "apply":
|
@@ -2206,7 +2206,7 @@ def hide_index(
|
2206 | 2206 | self.hide_index_names = True
|
2207 | 2207 | return self
|
2208 | 2208 |
|
2209 |
| - levels_ = _refactor_levels(level, self.index) |
| 2209 | + levels_ = refactor_levels(level, self.index) |
2210 | 2210 | self.hide_index_ = [
|
2211 | 2211 | True if lev in levels_ else False for lev in range(self.index.nlevels)
|
2212 | 2212 | ]
|
@@ -2345,7 +2345,7 @@ def hide_columns(
|
2345 | 2345 | self.hide_column_names = True
|
2346 | 2346 | return self
|
2347 | 2347 |
|
2348 |
| - levels_ = _refactor_levels(level, self.columns) |
| 2348 | + levels_ = refactor_levels(level, self.columns) |
2349 | 2349 | self.hide_columns_ = [
|
2350 | 2350 | True if lev in levels_ else False for lev in range(self.columns.nlevels)
|
2351 | 2351 | ]
|
@@ -3532,37 +3532,3 @@ def css_calc(x, left: float, right: float, align: str):
|
3532 | 3532 | index=data.index,
|
3533 | 3533 | columns=data.columns,
|
3534 | 3534 | )
|
3535 |
| - |
3536 |
| - |
3537 |
| -def _refactor_levels( |
3538 |
| - level: Level | list[Level] | None, |
3539 |
| - obj: Index, |
3540 |
| -) -> list[Level]: |
3541 |
| - """ |
3542 |
| - Returns a consistent levels arg for use in ``hide_index`` or ``hide_columns``. |
3543 |
| -
|
3544 |
| - Parameters |
3545 |
| - ---------- |
3546 |
| - level : int, str, list |
3547 |
| - Original ``level`` arg supplied to above methods. |
3548 |
| - obj: |
3549 |
| - Either ``self.index`` or ``self.columns`` |
3550 |
| -
|
3551 |
| - Returns |
3552 |
| - ------- |
3553 |
| - list : refactored arg with a list of levels to hide |
3554 |
| - """ |
3555 |
| - if level is None: |
3556 |
| - levels_: list[Level] = list(range(obj.nlevels)) |
3557 |
| - elif isinstance(level, int): |
3558 |
| - levels_ = [level] |
3559 |
| - elif isinstance(level, str): |
3560 |
| - levels_ = [obj._get_level_number(level)] |
3561 |
| - elif isinstance(level, list): |
3562 |
| - levels_ = [ |
3563 |
| - obj._get_level_number(lev) if not isinstance(lev, int) else lev |
3564 |
| - for lev in level |
3565 |
| - ] |
3566 |
| - else: |
3567 |
| - raise ValueError("`level` must be of type `int`, `str` or list of such") |
3568 |
| - return levels_ |
0 commit comments