pandas.MultiIndex — pandas 0.24.2 documentation (original) (raw)
class pandas.
MultiIndex
[source]¶
A multi-level, or hierarchical, index object for pandas objects.
Parameters: | levels : sequence of arrays The unique labels for each level. codes : sequence of arrays Integers for each level designating which label at each location. New in version 0.24.0. labels : sequence of arrays Integers for each level designating which label at each location. Deprecated since version 0.24.0: Use codes instead sortorder : optional int Level of sortedness (must be lexicographically sorted by that level). names : optional sequence of objects Names for each of the index levels. (name is accepted for compat). copy : bool, default False Copy the meta-data. verify_integrity : bool, default True Check that the levels/codes are consistent and valid. |
---|
Notes
See the user guide for more.
Examples
A new MultiIndex
is typically constructed using one of the helper methods MultiIndex.from_arrays(), MultiIndex.from_product()and MultiIndex.from_tuples(). For example (using .from_arrays
):
arrays = [[1, 1, 2, 2], ['red', 'blue', 'red', 'blue']] pd.MultiIndex.from_arrays(arrays, names=('number', 'color')) MultiIndex(levels=[[1, 2], ['blue', 'red']], codes=[[0, 0, 1, 1], [1, 0, 1, 0]], names=['number', 'color'])
See further examples for how to construct a MultiIndex in the doc strings of the mentioned helper methods.
Attributes
names | Names of levels in MultiIndex |
---|---|
nlevels | Integer number of levels in this MultiIndex. |
levshape | A tuple with the length of each level. |
| levels | | | ---------- | | | codes | |
Methods
from_arrays(arrays[, sortorder, names]) | Convert arrays to MultiIndex. |
---|---|
from_tuples(tuples[, sortorder, names]) | Convert list of tuples to MultiIndex. |
from_product(iterables[, sortorder, names]) | Make a MultiIndex from the cartesian product of multiple iterables. |
from_frame(df[, sortorder, names]) | Make a MultiIndex from a DataFrame. |
set_levels(levels[, level, inplace, …]) | Set new levels on MultiIndex. |
set_codes(codes[, level, inplace, …]) | Set new codes on MultiIndex. |
to_frame([index, name]) | Create a DataFrame with the levels of the MultiIndex as columns. |
to_flat_index() | Convert a MultiIndex to an Index of Tuples containing the level values. |
is_lexsorted() | Return True if the codes are lexicographically sorted |
sortlevel([level, ascending, sort_remaining]) | Sort MultiIndex at the requested level. |
droplevel([level]) | Return index with requested level(s) removed. |
swaplevel([i, j]) | Swap level i with level j. |
reorder_levels(order) | Rearrange levels using input order. |
remove_unused_levels() | Create a new MultiIndex from the current that removes unused levels, meaning that they are not expressed in the labels. |