跳到主要内容

数据表操作

DataFrame Operations 组件用于对 DataFrame(表格)中的行与列执行操作,包括 schema 调整、记录修改、排序和过滤。 所有操作选项请参阅DataFrame Operations 参数

执行完成后,组件会输出一个新的 DataFrame,其中包含修改后的结果。

在流程中使用 DataFrame Operations

以下步骤演示如何在流程中配置 DataFrame Operations。 你可以跟着示例做,也可以在自己的流程里使用;唯一要求是上游组件必须能产出 DataFrame,以便传给 DataFrame Operations

  1. 创建一个新流程,或使用已有流程。

    示例:API 响应提取流程

    下图示例流程使用五个组件,先从 API 响应中提取 Data,再把它转换成 DataFrame,最后通过 DataFrame Operations 对表格数据做进一步处理。 第六个组件 Chat Output 在这个示例中是可选的,它只是为了方便你在 Playground 中查看结果,而不是去检查组件日志。

    A flow that ingests an API response, extracts it to a DataFrame with a Smart Transform component, and the processes it through a DataFrame Operations component

    如果你想用这个示例来测试 DataFrame Operations,可以这样做:

    1. 创建一个包含以下组件的流程:

      • API Request
      • Language Model
      • Smart Transform
      • Type Convert
    2. 配置 Smart Transform 组件 以及它依赖的组件:

      • API Request:配置 API Request 组件 从某个接口读取 JSON 数据,然后把 API Response 输出连接到 Smart TransformData 输入。
      • Language Model:选择你要使用的提供商与模型,并填写有效 API Key。将输出切换为 Language Model,然后把 LanguageModel 输出连接到 Smart TransformLanguage Model 输入。
      • Smart Transform:在 Instructions 中写自然语言指令,告诉组件如何从 API 响应中提取数据。具体内容取决于你的响应结构与目标。例如,如果响应里有一个很大的 result 字段,你可以写 explode the result field out into a Data object
    3. Smart TransformData 输出转换为 DataFrame

      1. Filtered Data 输出连接到 Type ConvertData 输入。
      2. Type ConvertOutput Type 设为 DataFrame

    完成后,流程就准备好接入 DataFrame Operations 组件了。

  2. 向流程中添加 DataFrame Operations,然后把其他组件产生的 DataFrame 输出连接到它的 DataFrame 输入。

    DataFrame Operations 的所有操作都要求至少接收一个来自其他组件的 DataFrame 输入。 如果某个组件不能直接产出 DataFrame,你可以先通过 Type Convert 组件 做转换。 你也可以直接改用更适合原始数据类型的组件,例如 Parser 组件Data Operations 组件

    如果你正在跟随上面的示例,请把 Type ConvertDataFrame Output 连接到这里的 DataFrame 输入。

  3. Operations 字段中选择要对输入 DataFrame 执行的操作。 例如,Filter 会根据指定列和值过滤行。

    提示

    每次只能选择一个操作。 如果你要对同一份数据执行多个操作,可以串联多个 DataFrame Operations 组件逐步处理。 如果是更复杂的多步操作,例如剧烈的 schema 变化、透视或高级变换,也可以考虑使用 LLM 驱动的组件,例如 Structured Output 组件Smart Transform 组件,把它们作为替代方案,或在进入 DataFrame Operations 前先做准备处理。

    如果你是在跟随示例流程,可以任选一个你想应用到 Smart Transform 提取结果上的操作。 如果你想查看传入的 DataFrame 内容,可先在 Type Convert 上点击 Run component,再点 Inspect output。 如果 DataFrame 结构异常,请继续检查上游组件输出,确定错误发生在哪一步,并据此调整流程配置。 例如,如果 Smart Transform 没有抽出你预期的字段,就需要调整指令,或确认这些字段确实存在于 API Response 中。

  4. 配置该操作对应的参数。 具体参数取决于你选中的操作。 例如,如果你选择 Filter,就需要填写 Column NameFilter ValueFilter Operator 来定义过滤条件。 更多说明请参阅DataFrame Operations 参数

  5. 测试流程时,点击 DataFrame Operations 上的 Run component,然后点击 Inspect output 查看新生成的 DataFrame

    如果你希望在 Playground 中查看结果,可以把 DataFrame Operations 的输出连接到 Chat Output,重新运行后再打开 Playground

更多示例请参阅条件循环

DataFrame Operations 参数

大多数 DataFrame Operations 参数都是条件型参数,因为它们只在特定操作下出现。

固定存在的只有两个参数:DataFramedf)和 Operationoperation)。 前者是输入的 DataFrame,后者是要对它执行的操作。 当你选择某个操作后,相关参数才会显示在 DataFrame Operations 组件上。

Add Column 用于为 DataFrame 新增一列,并为该列设置一个固定值。

对应参数为 New Column Namenew_column_name)和 New Column Valuenew_column_value)。