Expect the column discrete entropy to be between a minimum value and a maximum value.
expect_column_discrete_entropy_to_be_between
This expectation level is EXPERIMENTAL
Description
Expect the column discrete entropy to be between a minimum value and a maximum value.
The Shannon entropy of a discrete probability distribution is given by
- \sum_{i=1}^{n} P(x_i) * \log(P(x_i))
where P(x_i) is the probability of occurrence of value x_i.
For observed data the P(x_i) are replaced by the empirical frequencies n_{x_i}/N
expect_column_discrete_entropy_to_be_between is a :func:column_aggregate_expectation <great_expectations.execution_engine.MetaExecutionEngine.column_aggregate_expectation>
.
Args:
- column (str): The column name.
- min_value (float or None): The minimum value for the column standard deviation.
- max_value (float or None): The maximum value for the column standard deviation.
strict_min (boolean):
If True, the column standard deviation must be strictly larger than min_value, default=False
strict_max (boolean):
If True, the column standard deviation must be strictly smaller than max_value, default=False
base (float):
The base of the logarithm, default=2
Other Parameters:
- result_format (str or None): Which output mode to use:
BOOLEAN_ONLY
,BASIC
,COMPLETE
, orSUMMARY
. For more detail, see :ref:result_format <result_format>
. - include_config (boolean): If True, then include the expectation config as part of the result object. For more detail, see :ref:
include_config
. - catch_exceptions (boolean or None): If True, then catch exceptions and include them as part of the result object. For more detail, see :ref:
catch_exceptions
. - meta (dict or None): A JSON-serializable dictionary (nesting allowed) that will be included in the output without modification. For more detail, see :ref:
meta
.
Returns:
An ExpectationSuiteValidationResult
Exact fields vary depending on the values passed to :ref:result_format <result_format>
and
:ref:include_config
, :ref:catch_exceptions
, and :ref:meta
.
Notes:
- min_value and max_value are both inclusive unless strict_min or strict_max are set to True.
- If min_value is None, then max_value is treated as an upper bound
- If max_value is None, then min_value is treated as a lower bound
Want to make your own Expectation or an improvement to this one?
We've put together some great how to guides (including videos) on how to create your own expectations in a flash!
You can see those resources here: Contributor Resources