kedro.pipeline.node.节点

class kedro.pipeline.node.Node(func, inputs, outputs, *, name=None, tags=None, confirms=None, namespace=None)[source]

Node 是一个辅助类,用于简化将用户提供的函数作为 Kedro 管道的一部分运行所需的操作。

属性

confirms

返回数据集名称以确认为一个列表。

func

暴露节点的底层功能。

inputs

将节点输入作为列表返回,按照正确绑定到节点函数所需的顺序排列。

name

节点的名称。

namespace

节点的命名空间。

outputs

以列表形式返回节点输出,保持原始顺序

short_name

节点的名称。

tags

返回分配给节点的标签。

方法

run([inputs])

使用提供的输入运行此节点,并在字典中返回其结果。

tag(标签)

创建一个新的Node,它是当前节点的精确副本,

__init__(func, inputs, outputs, *, name=None, tags=None, confirms=None, namespace=None)[source]

在流水线中创建一个节点,通过提供一个待调用的函数以及输入和/或输出的变量名称。

Parameters:
  • func (Callable) – 对应节点逻辑的函数。该函数应至少有一个输入或输出。

  • inputs (str | list[str] | dict[str, str] | None) – 作为函数输入参数的变量名称或名称列表。名称数量应与所提供函数定义中的参数数量相匹配。当提供dict[str, str]时,变量名称将被映射到函数参数名称。

  • outputs (str | list[str] | dict[str, str] | None) – 用作函数输出的变量名称或名称列表。名称数量应与所提供函数返回的输出数量匹配。当提供dict[str, str]时,变量名称将被映射到函数返回的命名输出。

  • name (str | None) - 可选节点名称,用于在日志或任何其他可视化中显示节点时使用。有效的节点名称只能包含字母、数字、连字符、下划线和/或句点。

  • tags (str | Iterable[str] | None) – 可选的标签集合,将应用于节点。有效的节点标签只能包含字母、数字、连字符、下划线和/或句点。

  • confirms (str | list[str] | None) – 可选参数,指定需要确认的数据集名称或名称列表。这将导致调用相应数据集实例的confirm()方法。指定的数据集名称不一定需要存在于节点的inputsoutputs中。

  • namespace (str | None) – 可选的节点命名空间。

Raises:

ValueError – 在以下情况下会引发此异常: a) 当提供的参数不符合参数类型提示所建议的格式时。 b) 当节点生成多个同名输出时。 c) 当输入名称与输出名称相同时。 d) 当给定的节点名称违反命名要求时: 节点名称只能包含字母、数字、连字符、下划线和/或句点。

property confirms: list[str]

返回数据集名称以确认为一个列表。

Return type:

list[str]

Returns:

需要确认的数据集名称列表。

property func: Callable

暴露节点的底层功能。

Return type:

Callable

Returns:

返回节点的基础函数。

property inputs: list[str]

将节点输入作为列表返回,按照正确绑定到节点函数所需的顺序排列。

Returns:

节点输入名称列表。

property name: str

节点的名称。

Return type:

str

Returns:

如果提供了节点的名称,则使用该名称,否则使用其函数的名称。

property namespace: str | None

节点的命名空间。

Return type:

str | None

Returns:

表示节点命名空间的字符串,通常从外层到内层作用域。

property outputs: list[str]
Return node outputs as a list preserving the original order

如果可能的话。

Return type:

list[str]

Returns:

节点输出名称列表。

run(inputs=None)[source]

使用提供的输入运行此节点,并在字典中返回其结果。

Parameters:

inputs (dict[str, Any] | None) - 节点创建时指定的输入参数字典。

Raises:
  • ValueError – 在以下情况下会抛出该异常: a) 节点函数输入与节点输入定义不兼容。 示例1:节点定义输入为2个DataFrame的列表,但实际只提供了1个或提供了2个不同的DataFrame。 b) 节点函数输出与节点输出定义不兼容。 示例1:节点函数定义返回字典,但实际函数返回的是列表。 示例2:节点定义输出为5个字符串的列表,但函数返回的是4个对象的列表。

  • Exception - 节点执行期间抛出的任何异常。

Return type:

dict[str, Any]

Returns:

所有生成的节点输出都以字典形式返回,其中键由节点输出定义。

property short_name: str

节点的名称。

Return type:

str

Returns:

返回一个简短、用户友好的名称,但不保证唯一性。节点名称中的命名空间已被移除。

tag(tags)[source]
Create a new Node which is an exact copy of the current one,

但添加了更多标签。

Parameters:

标签 (str | Iterable[str]) – 要添加到新节点的标签。

Return type:

节点

Returns:

添加标签后的当前Node对象的副本。

property tags: set[str]

返回分配给节点的标签。

Return type:

set[str]

Returns:

返回节点上所有已分配标签的集合。