【问题标题】:Knime - How to use path input and output as variableKnime - 如何使用路径输入和输出作为变量
【发布时间】:2016-02-05 12:22:54
【问题描述】:

这似乎是一个很简单的问题,但我找不到一个直截了当的问题。

场景 我在 Knime 中有一个工作流程,可以读取文件(excel),处理并输出到多个文件。输入文件和输出文件在同一个文件夹中,并且与 knime 工作流所在的文件夹不同。

我想在几个不同的文件夹中运行此工作流程。每个文件夹都有相同的输入文件,输出文件将始终具有相同的名称。 现在,我需要为每个不同的文件夹手动更改每个输入/输出节点中文件夹的路径。

可能的解决方案 带有文件夹路径的变量。要在另一个文件夹上运行工作流,我只会更改该变量。在 knime 中可能吗?怎么样?

【问题讨论】:

    标签: input output relative-path knime


    【解决方案1】:

    您可以使用Java Edit Variable 节点将相同的文件名附加到包含实际文件夹路径的流变量(用于输入和输出文件)。

    不确定您想如何更改输入文件夹,如果手动完成,您可以使用 QuickForms 节点进行选择(来自 Labs for Wrapped 节点)。对于一个文件夹中的多个文件夹,您可以使用List Files 节点。

    要使用流变量设置参数,首先你必须为它们指定一个值,然后你可以在每个节点的流变量选项卡中adjust the values

    【讨论】:

    • 我用文件夹的路径创建了一个名为“PATH”的 worfflow 变量。并尝试在 XLS Reader 节点的 Flow Variables 中将其用作 XLS_Locationa。但是没有用。注意:我是 knime 的基本用户......
    • 您需要使用Java Edit Variable 节点和类似以下的代码:out_xlsPath = c_PATH + "/yourExcelFile.xls"; 来创建与您的 xls 文件的路径匹配的流变量,而不是它的文件夹。现在您可以在 XLS Reader 节点中使用该流变量。
    【解决方案2】:

    解决方案

    XLS 阅读器节点不能使用变量作为输入(例如,不同于 csv 导入器)。 因此,我手动选择输入文件并将 XLSLocation 作为变量传递给 Java 编辑变量。在这里,我对输入文件的路径进行子串化并连接输出文件的名称。这些作为变量输出,然后在输出节点上使用。

    【讨论】:

    • 不仅是 CSV 导入器,而且 每个 节点(具有可修改设置)都可以通过流变量选项卡进行调整,而不仅仅是那些在常规设置选项卡。
    • 不,没什么特别的。您需要像在解决方案中一样创建流变量(例如使用 Java 编辑变量),转到 XLS 阅读器节点的 Flow Variables 选项卡,然后从下拉菜单中选择 XLS_LOCATION 选项之外的流变量您已创建. (请注意,流变量需要一个路径,而不是 URI,以防 CSV Importer 需要它。)您需要使用红线将流变量连接到 XLS Reader 节点(正如您在许多示例中看​​到的那样) .
    猜你喜欢
    • 2019-11-19
    • 1970-01-01
    • 1970-01-01
    • 2013-01-29
    • 2020-07-10
    • 2022-11-03
    • 2014-05-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多