pandera.api.pandas.components.MultiIndex¶
- class pandera.api.pandas.components.MultiIndex(indexes, coerce=False, strict=False, name=None, ordered=True, unique=None)[source]¶
验证pandas DataFrame MultiIndex的类型和属性。
这个类继承自
DataFrameSchema以利用其验证逻辑。创建多重索引验证器。
- Parameters:
- 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
请查看 这里 获取更多使用详情。
属性
BACKEND_REGISTRYcoerce是否强制转换数据类型。
dtype获取 dtype 属性。
dtypes一个字典,其中键是列名,值是该列的
DataType。names获取MultiIndex schema组件中的索引名称。
properties获取用于序列化的架构属性。
unique应该共同唯一的列列表。
方法
- __init__(indexes, coerce=False, strict=False, name=None, ordered=True, unique=None)[source]¶
创建多重索引验证器。
- Parameters:
- 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
请查看 这里 获取更多使用详情。
- example(size=None)[source]¶
生成特定大小的示例。
- Parameters:
size – 生成的 DataFrame 中的元素数量。
- Return type:
- Returns:
pandas 数据框对象。
- strategy(*, size=None)[source]¶
创建一个
hypothesis策略来生成一个 DataFrame。- Parameters:
size – 生成的元素数量
n_regex_columns – 生成的正则表达式列的数量。
- Returns:
生成 pandas DataFrame 对象的一种策略。
- __call__(dataframe, head=None, tail=None, sample=None, random_state=None, lazy=False, inplace=False)[source]¶
此为
DataFrameSchema.validate()方法的别名。