pandera.api.pandas.components.MultiIndex.__init__#
- MultiIndex.__init__(indexes, coerce=False, strict=False, name=None, ordered=True, unique=None)[source]#
Create MultiIndex validator.
- Parameters
indexes (
List
[Index
]) – list of Index validators for each level of the MultiIndex index.coerce (
bool
) – Whether or not to coerce the MultiIndex to the specified dtypes before validationstrict (
bool
) – whether or not to accept columns in the MultiIndex that aren’t defined in theindexes
argument.ordered (
bool
) – whether or not to validate the indexes order.unique (
Union
[str
,List
[str
],None
]) – a list of index names that should be jointly unique.
- Example
>>> import pandas as pd >>> import pandera as pa >>> >>> >>> schema = pa.DataFrameSchema( ... columns={"column": pa.Column(int)}, ... index=pa.MultiIndex([ ... pa.Index(str, ... pa.Check(lambda s: s.isin(["foo", "bar"])), ... name="index0"), ... pa.Index(int, name="index1"), ... ]) ... ) >>> >>> df = pd.DataFrame( ... data={"column": [1, 2, 3]}, ... index=pd.MultiIndex.from_arrays( ... [["foo", "bar", "foo"], [0, 1, 2]], ... names=["index0", "index1"], ... ) ... ) >>> >>> schema.validate(df) column index0 index1 foo 0 1 bar 1 2 foo 2 3
See here for more usage details.