pandera.api.pandas.components.Column¶
- class pandera.api.pandas.components.Column(dtype=None, checks=None, parsers=None, nullable=False, unique=False, report_duplicates='all', coerce=False, required=True, name=None, regex=False, title=None, description=None, default=None, metadata=None, drop_invalid_rows=False)[source]¶
验证pandas DataFrame列的类型和属性。
创建列验证器对象。
- Parameters:
dtype (
Union[str,type,DataType,Type,ExtensionDtype,dtype]) – 列的datatype。用于对数据框进行类型检查的datatype。如果指定了字符串,则假定为有效的pandas字符串值之一: http://pandas.pydata.org/pandas-docs/stable/basics.html#dtypes检查 (
Union[Check,List[Union[Check,Hypothesis]],None]) – 检查以验证列的有效性nullable (
bool) – 列是否可以包含空值。unique (
bool) – 列值是否应该是唯一的report_duplicates (
Union[Literal[‘exclude_first’],Literal[‘exclude_last’],Literal[‘all’]]) – 如何报告唯一错误 - exclude_first: 报告除第一个出现外的所有重复项 - exclude_last: 报告除最后一个出现外的所有重复项 - all: (默认)报告所有重复项强制转换 (
bool) – 如果为 True,当调用 schema.validate 时,列将被强制转换为指定的数据类型。这对列没有影响,其中dtype=None。必需 (
bool) – 列是否允许缺失正则表达式 (
bool) – 是否将name属性视为需应用于数据框中多个列的正则表达式模式。drop_invalid_rows (
bool) – 如果为 True,将在验证时删除无效行。
- Raises:
SchemaInitError – 如果无法从参数构建架构
- Example:
>>> import pandas as pd >>> import pandera as pa >>> >>> >>> schema = pa.DataFrameSchema({ ... "column": pa.Column(str) ... }) >>> >>> schema.validate(pd.DataFrame({"column": ["foo", "bar"]})) column 0 foo 1 bar
请查看 这里 获取更多使用详情。
属性
BACKEND_REGISTRYdtype获取pandas的数据类型
properties获取列属性。
方法
- __init__(dtype=None, checks=None, parsers=None, nullable=False, unique=False, report_duplicates='all', coerce=False, required=True, name=None, regex=False, title=None, description=None, default=None, metadata=None, drop_invalid_rows=False)[source]¶
创建列验证器对象。
- Parameters:
dtype (
Union[str,type,DataType,Type,ExtensionDtype,dtype]) – 列的数据类型。用于对数据框进行类型检查的数据类型。如果指定了一个字符串,则假定为有效的 pandas 字符串值之一: http://pandas.pydata.org/pandas-docs/stable/basics.html#dtypesnullable (
bool) – 列是否可以包含空值。unique (
bool) – 列值是否应该唯一report_duplicates (
Union[Literal[‘exclude_first’],Literal[‘exclude_last’],Literal[‘all’]]) – 如何报告唯一错误 - exclude_first: 报告除第一个出现外的所有重复项 - exclude_last: 报告除最后一个出现外的所有重复项 - all: (默认)报告所有重复项强制转换 (
bool) – 如果为 True,当调用 schema.validate 时,列将被强制转换为指定的数据类型。这对列没有影响,其中dtype=None。必需 (
bool) – 列是否允许缺失正则表达式 (
bool) – 是否将name属性视为需应用于数据框中多个列的正则表达式模式。drop_invalid_rows (
bool) – 如果为 True,将在验证时删除无效行。
- Raises:
SchemaInitError – 如果无法从参数构建架构
- Example:
>>> import pandas as pd >>> import pandera as pa >>> >>> >>> schema = pa.DataFrameSchema({ ... "column": pa.Column(str) ... }) >>> >>> schema.validate(pd.DataFrame({"column": ["foo", "bar"]})) column 0 foo 1 bar
请查看 这里 获取更多使用详情。
- example(size=None)[source]¶
生成特定大小的示例。
- Parameters:
size – 生成的索引中的元素数量。
- Return type:
- Returns:
pandas 数据框对象。
- get_regex_columns(check_obj)[source]¶
根据正则表达式列名称模式获取匹配的列名称。
- Parameters:
columns – 要与正则表达式模式匹配的列
- Return type:
- Returns:
匹配列