On this page
pandas.MultiIndex
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.
See also
MultiIndex.from_arrays
- Convert list of arrays to MultiIndex.
MultiIndex.from_product
- Create a MultiIndex from the cartesian product of iterables.
MultiIndex.from_tuples
- Convert list of tuples to a MultiIndex.
MultiIndex.from_frame
- Make a MultiIndex from a DataFrame.
Index
- The base pandas Index type.
Notes
See the user guide for more.
Examples
A new
MultiIndex
is typically constructed using one of the helper methodsMultiIndex.from_arrays()
,MultiIndex.from_product()
andMultiIndex.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([(1, 'red'), (1, 'blue'), (2, 'red'), (2, 'blue')], 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
(self, levels[, level, inplace, …])Set new levels on MultiIndex. set_codes
(self, codes[, level, inplace, …])Set new codes on MultiIndex. to_frame
(self[, index, name])Create a DataFrame with the levels of the MultiIndex as columns. to_flat_index
(self)Convert a MultiIndex to an Index of Tuples containing the level values. is_lexsorted
(self)Return True if the codes are lexicographically sorted sortlevel
(self[, level, ascending, …])Sort MultiIndex at the requested level. droplevel
(self[, level])Return index with requested level(s) removed. swaplevel
(self[, i, j])Swap level i with level j. reorder_levels
(self, order)Rearrange levels using input order. remove_unused_levels
(self)Create a new MultiIndex from the current that removes unused levels, meaning that they are not expressed in the labels. -
© 2008–2012, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
Licensed under the 3-clause BSD License.
https://pandas.pydata.org/pandas-docs/version/0.25.0/reference/api/pandas.MultiIndex.html