pandera.engines.pandas_engine.Decimal

class pandera.engines.pandas_engine.Decimal(precision=28, scale=0, rounding=None)[source]

一个decimal.Decimal的语义表示。

注意

decimal.Decimal 在通过 pyarrow 导出 pandas DataFrame 到 parquet 文件时特别有用。Pyarrow 将自动将 object 系列中包含的十进制对象转换为相应的 parquet Decimal type

属性

auto_coerce

在所有情况下是否强制转换为True

continuous

数字数据类型是否是连续的。

exact

数据类型是否是数字的精确表示。

precision

十进制类型可以表示的有效数字位数。

scale

小数点后的位数。

type

由数据类型封装的原生 pandas 数据类型。

rounding

Python decimal.Decimal 类支持的 舍入模式

方法

__init__(precision=28, scale=0, rounding=None)[source]
check(pandera_dtype, data_container=None)[source]

检查 pandera DataType 是否等价。

Parameters:
  • pandera_dtype (DataType) – 预期 DataType

  • data_container (可选[系列, ]) – 数据容器,供需要实际数据进行验证的数据类型使用。

Return type:

Union[bool, Iterable[bool]]

Returns:

布尔标量或布尔标量的可迭代对象,指示哪些元素通过了检查。

coerce(data_container)[source]

纯强制转换而不捕获异常。

Return type:

Union[Series, DataFrame]

coerce_value(value)[source]

将一个值强制转换为特定类型。

Return type:

Decimal

try_coerce(data_container)[source]

强制数据容器转换为数据类型, 如果强制转换失败,则引发 ParserError :raises: ParserError: 如果强制转换失败

Return type:

Union[Series, DataFrame]

__call__(data_container)[source]

将数据容器强制转换为数据类型。