首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Rapidminer与Java的集成:获取输出示例集(流程结果)

Rapidminer与Java的集成:获取输出示例集(流程结果)
EN

Stack Overflow用户
提问于 2014-05-30 20:54:44
回答 2查看 1.7K关注 0票数 1

我希望从Java中执行一个Rapidminer进程,以便将输出ExampleSet (流程结果)用于后续操作(使用Java)。

我使用下面的代码管理流程执行,但我不知道如何获得流程结果示例集。

理想情况下,我希望获得独立于变量的任何示例集,但如果需要预先生成元数据,则必须是。

代码语言:javascript
复制
package com.companyname.rm;

import com.rapidminer.Process;
import com.rapidminer.RapidMiner;
import com.rapidminer.operator.OperatorException;
import com.rapidminer.tools.XMLException;

import java.io.File;
import java.io.IOException;

public class RunProcess {
    public static void main(String[] args) {
        try {
            RapidMiner.setExecutionMode(RapidMiner.ExecutionMode.COMMAND_LINE);
            RapidMiner.init();

            Process process = new Process(new File("//my_path/..../test_JAVA.rmp"));
            process.run();

        } catch (IOException | XMLException | OperatorException ex) {
            ex.printStackTrace();
        }
    }
}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-11-02 16:22:41

要获得进程的ExampleSet,需要添加

代码语言:javascript
复制
IOContainer ioResult = process.run();

http://allinoneat.blogspot.de/2013/04/integrate-rapidminer-wtih-java.html摘录的一个简短的例子

代码语言:javascript
复制
IOContainer ioResult = process.run();
if (ioResult.getElementAt(0) instanceof ExampleSet) {
    ExampleSet resultSet = (ExampleSet) ioResult.getElementAt(0);

    for (Example example : resultSet) {
        Iterator<Attribute> allAtts = example.getAttributes().allAttributes();
            while (allAtts.hasNext()) {
                Attribute a = allAtts.next();
                if (a.isNumerical()) {
                    double value = example.getValue(a);
                    System.out.print(value + " ");
                } else {
                    String value = example.getValueAsString(a);
                    System.out.print(value + " ");
                }
            }
            System.out.println("\n");
     }
}
票数 1
EN

Stack Overflow用户

发布于 2014-06-10 01:57:56

选项1:单击上下文,并将流程输出保存到文件中。然后,从文件中阅读。

Option2:

使用WriteAsText保存所需的内容。然后从文件中读取。

我只是把rapidminer作为脚本运行:

http://rapid-i.com/rapidforum/index.php?topic=3009.0

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23963297

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档