MCPcopy
hub / github.com/pandas-dev/pandas / maybe_droplevels

Function maybe_droplevels

pandas/core/indexes/multi.py:4680–4710  ·  view source on GitHub ↗

Attempt to drop level or levels from the given index. Parameters ---------- index: Index key : scalar or tuple Returns ------- Index

(index: Index, key)

Source from the content-addressed store, hash-verified

4678
4679
4680def maybe_droplevels(index: Index, key) -> Index:
4681 """
4682 Attempt to drop level or levels from the given index.
4683
4684 Parameters
4685 ----------
4686 index: Index
4687 key : scalar or tuple
4688
4689 Returns
4690 -------
4691 Index
4692 """
4693 # drop levels
4694 original_index = index
4695 if isinstance(key, tuple):
4696 # Caller is responsible for ensuring the key is not an entry in the first
4697 # level of the MultiIndex.
4698 for _ in key:
4699 try:
4700 index = index._drop_level_numbers([0])
4701 except ValueError:
4702 # we have dropped too much, so back out
4703 return original_index
4704 else:
4705 try:
4706 index = index._drop_level_numbers([0])
4707 except ValueError:
4708 pass
4709
4710 return index
4711
4712
4713def _coerce_indexer_frozen(array_like, categories, copy: bool = False) -> np.ndarray:

Callers 3

_get_valueMethod · 0.90
_getitem_multilevelMethod · 0.90
_set_item_frame_valueMethod · 0.90

Calls 1

_drop_level_numbersMethod · 0.80

Tested by

no test coverage detected