pandera.schema_components.MultiIndex.__init__¶
-
MultiIndex.
__init__
(indexes, coerce=False, strict=False, name=None, ordered=True)[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 pandas_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.
- Example
>>> import pandas as pd >>> import pandera as pa >>> >>> >>> schema = pa.DataFrameSchema( ... columns={"column": pa.Column(pa.Int)}, ... index=pa.MultiIndex([ ... pa.Index(pa.String, ... pa.Check(lambda s: s.isin(["foo", "bar"])), ... name="index0"), ... pa.Index(pa.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.