How to use _scale_to_exp method in pandera

Best Python code snippet using pandera_python

dtypes.py

Source:dtypes.py Github

copy

Full Screen

...270###############################################################################271# decimal272###############################################################################273DEFAULT_PYTHON_PREC = 28274def _scale_to_exp(scale: int) -> decimal.Decimal:275 scale_fmt = format(10**-scale, f".{scale}f")276 return decimal.Decimal(scale_fmt)277@immutable(init=True)278class Decimal(_Number):279 """Semantic representation of a decimal data type."""280 exact: bool = dataclasses.field(init=False, default=True)281 continuous: bool = dataclasses.field(init=False, default=True)282 precision: int = DEFAULT_PYTHON_PREC283 """The number of significant digits that the decimal type can represent."""284 scale: int = 0 # default 0 is aligned with pyarrow and various databases.285 """The number of digits after the decimal point."""286 # pylint: disable=line-too-long287 rounding: str = dataclasses.field(288 default_factory=lambda: decimal.getcontext().rounding289 )290 """291 The `rounding mode <https://docs.python.org/3/library/decimal.html#rounding-modes>`__292 supported by the Python :py:class:`decimal.Decimal` class.293 """294 def __init__(295 self,296 precision: int = DEFAULT_PYTHON_PREC,297 scale: int = 0,298 rounding: Optional[str] = None,299 ):300 super().__init__()301 if precision <= 0:302 raise ValueError(303 f"Decimal precision {precision} must be positive."304 )305 if scale is not None and scale > precision:306 raise ValueError(307 f"Decimal scale {scale} must be between 0 and {precision}."308 )309 object.__setattr__(self, "precision", precision)310 object.__setattr__(self, "scale", scale)311 object.__setattr__(self, "rounding", rounding)312 object.__setattr__(313 self, "_exp", _scale_to_exp(scale) if scale else None314 )315 object.__setattr__(316 self,317 "_ctx",318 decimal.Context(prec=precision, rounding=self.rounding),319 )320 def __str__(self) -> str:321 return f"{self.__class__.__name__}({self.precision}, {self.scale})"322###############################################################################323# nominal324###############################################################################325@immutable(init=True)326class Category(DataType): # type: ignore327 """Semantic representation of a categorical data type."""...

Full Screen

Full Screen

Automation Testing Tutorials

Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.

LambdaTest Learning Hubs:

YouTube

You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.

Run pandera automation tests on LambdaTest cloud grid

Perform automation testing on 3000+ real desktop and mobile devices online.

Try LambdaTest Now !!

Get 100 minutes of automation test minutes FREE!!

Next-Gen App & Browser Testing Cloud

Was this article helpful?

Helpful

NotHelpful