gpt4 book ai didi

java - 通过Java动态添加输入到RapidMiner

转载 作者:行者123 更新时间:2023-12-01 13:25:31 28 4
gpt4 key购买 nike

我需要将文件动态输入到我的java应用程序中并使用rapidminer进行分类。我有以下代码:

RapidMiner.setExecutionMode(RapidMiner.ExecutionMode.COMMAND_LINE);
RapidMiner.init();

Process process = new Process(new File("C:\\Users\\nelze\\.RapidMiner5 \\repositories\\WalkingRepo\\NaiveClassify.rmp"));
Operator op = process.getOperator("Read CSV");
op.setParameter(com.rapidminer.operator.nio.CSVExampleSource.PARAMETER_CSV_FILE, "C:\\Users\\nelze\\unlabeled (2).csv");
//ioInput.append(op);
IOContainer ioResult = process.run();
ExampleSet resultSet1 = (ExampleSet)ioResult.getElementAt(0);
Iterator<Attribute> allAttributes = resultSet1.getAttributes().allAttributes();

但是,当我运行它时,它总是显示“输入文件未定义。”

在我的 RapidMiner 进程中,输入端口连接到 READ CSV 运算符。

任何帮助将不胜感激

最佳答案

我假设您的Read CSV运算符已连接到进程的输入端口(左侧的顶部端口,标记为inp。)如果是true,参数 csv file 不再使用(它也应该隐藏在 UI 中)。相反,使用发送到输入端口的文件。解决办法有两种:

  1. 断开该端口的连接并按照在代码中的方式设置参数。

  2. 保持端口连接并将文件对象发送到进程中,以便它从输入端口发送到 Read CSV 运算符。像这样修改你的代码:

    FileObject file = new SimpleFileObject(new File(".../unlabeled (2).csv"));
    IOContainer input = new IOContainer(file);
    IOContainer ioResult = process.run(input);

关于java - 通过Java动态添加输入到RapidMiner,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21822803/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com