MetadataRouter#

class sklearn.utils.metadata_routing.MetadataRouter(owner)[源代码]#

存储和处理路由器对象的元数据路由。

路由器对象使用此类来存储和处理元数据路由。路由信息存储为形式的字典 {"object_name": RouteMappingPair(method_mapping, routing_info)} ,在哪里 method_mappingMethodMappingrouting_info 要么是 MetadataRequestMetadataRouter instance.

Added in version 1.3.

参数:
ownerstr

这些请求所属的对象的名称。

add(*, method_mapping, **objs)[源代码]#

添加命名对象及其相应的方法映射。

参数:
method_mappingMethodMapping

子方法和父方法之间的映射。

**objsdict

对象字典,通过调用从中提取元数据 get_routing_for_object 在他们身上。

返回:
selfMetadataRouter

返回 self .

add_self_request(obj)[源代码]#

添加 self (as消费者)到路由。

如果路由器也是消费者,因此路由器本身需要包含在路由中,则使用此方法。传递的对象可以是估计器或 MetadataRequest .

路由器应该使用此方法添加自己,而不是 add 因为它应该与路由器将元数据路由到的其他对象不同地对待。

参数:
obj对象

这通常是路由器实例,即 selfget_metadata_routing() 实施.它也可以是一个 MetadataRequest instance.

返回:
selfMetadataRouter

返回 self .

consumes(method, params)[源代码]#

检查给定的参数是否被给定的方法消耗。

Added in version 1.4.

参数:
methodstr

要检查的方法的名称。

params字符串的迭代

要检查的参数的迭代对象。

返回:
consumed字符集

给定方法消耗的一组参数。

route_params(*, caller, params)[源代码]#

返回子对象请求的输入参数。

此方法的输出是一个 Bunch ,其中包括路由器中使用的每个子对象的所有方法的元数据 caller

如果路由器也是消费者,它还会检查是否有警告 self ' s/Consumer请求的元数据。

参数:
callerstr

请求和路由参数的方法的名称。如果被称为内部 fit 路由器的方法,它将是 "fit" .

paramsdict

提供的元数据的字典。

返回:
params

A Bunch 形式 {"object_name": {"method_name": {params: value}}} 它可以用于将所需的元数据传递给相应的方法或相应的子对象。

validate_metadata(*, method, params)[源代码]#

验证方法的给定元数据。

这就提出了一个 TypeError 如果子对象不理解传递的一些元数据。

参数:
methodstr

请求和路由参数的方法的名称。如果被称为内部 fit 路由器的方法,它将是 "fit" .

paramsdict

提供的元数据的字典。