设置Operator输出端口的正确数据类型

RMUser2806RMUser2806 成员职位:1学我
大家好,
我最近遇到了一个问题,而我试图在我的扩展定义我的自定义操作符的输出端口正确的数据类型。
似乎根本不可能定义数据类型。无论我定义哪种数据类型,这个端口的数据类型在RapidMiner中总是显示为一个iooobject。我正在尝试同样的输入端口的这个操作,它的工作完美…
有人能帮我设置一个操作员的输出端口正确的数据类型吗?我如何在我的操作符的Java类中做到这一点?

提前感谢。

答案

  • MartinLiebigMartinLiebig 管理员,版主,员工,RapidMiner认证分析师,RapidMiner认证专家,大学教授职位:3314年RM数据科学家
    你好,
    我认为这是从元数据转换,这是在构造函数中定义的。这里是例如我的LDAOperator构造函数:

    public LDA(OperatorDescription描述){
    超级(描述);getTransformer()。addRule(new GenerateNewExampleSetMDRule(exaOutput)) {

    @Override
    公共无效transformMD() {
    尝试{
    exaOutput.deliverMD (LDAModel.createExampleSetMetaData (getParameterAsInt (PARAMETER_NUMTOPICS)));
    } catch (UndefinedParameterError UndefinedParameterError) {
    exaOutput.deliverMD (LDAModel.createExampleSetMetaData (1));


    });

    getTransformer()。addRule(new GenerateNewExampleSetMDRule(topicOutput) {

    @Override
    公共无效transformMD() {
    md = new ExampleSetMetaData();
    md.addAttribute(new AttributeMetaData("topicId", Ontology.INTEGER));
    md.addAttribute(new AttributeMetaData("word", Ontology.NOMINAL));
    md.addAttribute(new AttributeMetaData("weight", Ontology.REAL));
    topicOutput.deliverMD (md);

    });

    getTransformer()。addRule(new GenerateNewMDRule(performanceOutput, new MetaData(PerformanceVector.class)));

    在OS studio代码中有很多例子。

    BR,
    马丁

    - RapidMin乐鱼平台进入er数据科学服务主管
    德国多特蒙德
登录注册置评。