diff --git a/sklearn/utils/validation.py b/sklearn/utils/validation.py index 5936415c776b8..1983a9c4d19ff 100644 --- a/sklearn/utils/validation.py +++ b/sklearn/utils/validation.py @@ -1418,6 +1418,15 @@ def check_scalar( f"Possible values are: {expected_include_boundaries}." ) + if include_boundaries in ("left", "both") and min_val is None: + raise ValueError( + f"Invalid combination of `{include_boundaries}` and `{min_val}`" + ) + if include_boundaries in ("right", "both") and max_val is None: + raise ValueError( + f"Invalid combination of `{include_boundaries}` and `{max_val}`" + ) + comparison_operator = ( operator.lt if include_boundaries in ("left", "both") else operator.le )