Martinacap02's picture
Init deploy branch for HF Space
f7d11f7
import json
import great_expectations as gx
from loguru import logger
def set_gx(source_name, asset_name, suite_name):
context = gx.get_context()
data_source = context.data_sources.add_pandas(name=source_name)
data_asset = data_source.add_dataframe_asset(name=asset_name)
batch_definition = data_asset.add_batch_definition_whole_dataframe("batch_definition")
suite = context.suites.add(
gx.core.expectation_suite.ExpectationSuite(
name=suite_name,
)
)
return context, suite, batch_definition
def show_results(checkpoint_result):
result = json.loads(checkpoint_result.describe())
for i, v in enumerate(result.get("validation_results", []), 1):
logger.info(f"Validation {i}, {v['success']}")
for e in v.get("expectations", []):
name = e["expectation_type"]
kwargs = e.get("kwargs", {})
col = kwargs.get("column")
success = e["success"]
logger.info(f"{col}: {name} -> {success}")
if not success:
logger.warning(kwargs)
logger.warning(e.get("result"))
if result.get("success"):
logger.success(f"Overall success: {result.get('success')}")
else:
logger.error(f"Overall success: {result.get('success')}")