pandas.MultiIndex#
- class pandas.MultiIndex(levels=None, codes=None, sortorder=None, names=None, copy=False, name=None, verify_integrity=True)[source]#
A multi-level, or hierarchical, index object for pandas objects.
- Parameters:
- levelssequence of arrays
The unique labels for each level.
- codessequence of arrays
Integers for each level designating which label at each location.
- sortorderoptional int
Level of sortedness (must be lexicographically sorted by that level).
- namesoptional sequence of objects
Names for each of the index levels. (name is accepted for compat).
- copybool, default False
Copy the meta-data.
- nameLabel
Kept for compatibility with 1-dimensional Index. Should not be used.
- verify_integritybool, default True
Check that the levels/codes are consistent and valid.
Attributes
Names of levels in MultiIndex.
Levels of the MultiIndex.
Codes of the MultiIndex.
Integer number of levels in this MultiIndex.
A tuple representing the length of each level in the MultiIndex.
Return the dtypes as a Series for the underlying MultiIndex.
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, verify_integrity])Set new levels on MultiIndex.
set_codes(codes, *[, level, verify_integrity])Set new codes on MultiIndex.
to_frame([index, name, allow_duplicates])Create a DataFrame with the levels of the MultiIndex as columns.
Convert a MultiIndex to an Index of Tuples containing the level values.
sortlevel([level, ascending, ...])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.
Create new MultiIndex from current that removes unused levels.
get_level_values(level)Return vector of label values for requested level.
get_indexer(target[, method, limit, tolerance])Compute indexer and mask for new index given the current index.
get_loc(key)Get location for a label or a tuple of labels.
get_locs(seq)Get location for a sequence of labels.
get_loc_level(key[, level, drop_level])Get location and sliced index for requested label(s)/level(s).
drop(codes[, level, errors])Make a new
pandas.MultiIndexwith the passed list of codes deleted.See also
MultiIndex.from_arraysConvert list of arrays to MultiIndex.
MultiIndex.from_productCreate a MultiIndex from the cartesian product of iterables.
MultiIndex.from_tuplesConvert list of tuples to a MultiIndex.
MultiIndex.from_frameMake a MultiIndex from a DataFrame.
IndexThe base pandas Index type.
Notes
See the user guide for more.
Examples
A new
MultiIndexis 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.