check_scalar#

sklearn.utils.check_scalar(x, name, target_type, *, min_val=None, max_val=None, include_boundaries='both')#

验证标量参数的类型和值。

Parameters:
xobject

要验证的标量参数。

namestr

要在错误消息中打印的参数名称。

target_typetype 或 tuple

参数可接受的数据类型。

min_valfloat 或 int, default=None

参数可以取的最小有效值。如果为 None(默认),则表示参数没有下限。

max_valfloat 或 int, default=None

参数可以取的最大有效值。如果为 None(默认),则表示参数没有上限。

include_boundaries{“left”, “right”, “both”, “neither”}, default=”both”

min_valmax_val 定义的区间是否应包括边界。可能的选择是:

  • "left" : 只有 min_val 包含在有效区间内。 相当于区间 [ min_val, max_val )

  • "right" : 只有 max_val 包含在有效区间内。 相当于区间 ( min_val, max_val ]

  • "both" :min_valmax_val 都包含在有效区间内。 相当于区间 [ min_val, max_val ]

  • "neither" :min_valmax_val 都不包含在有效区间内。 相当于区间 ( min_val, max_val )

Returns:
xnumbers.Number

验证后的数字。

Raises:
TypeError

如果参数的类型与所需类型不匹配。

ValueError

如果参数的值违反给定的边界。 如果 min_valmax_valinclude_boundaries 不一致。

Examples

>>> from sklearn.utils.validation import check_scalar
>>> check_scalar(10, "x", int, min_val=1, max_val=20)
10