【问题标题】:Generate attribute via mathematical expression with Loop Attribute Function in RapidMiner在 RapidMiner 中使用循环属性函数通过数学表达式生成属性
【发布时间】:2017-02-23 22:01:40
【问题描述】:

我想反转表中一组属性的分数。我已经选择了属性并将它们发送到“循环属性”函数。在函数中,我指定了“生成属性”。对于每个属性,我想将其放在分母中,如下所示:1/[Attribute]。看来我必须在公式中指定一个属性名称。是否有我缺少的通配符选项?还有其他解决方案吗?

【问题讨论】:

    标签: loops attributes rapidminer


    【解决方案1】:

    您要查找的通配符是参数属性名称宏。 这个宏(类似于流程变量)可以在 Generate Attributes Operator 中构建所需的函数表达式,就像我在下面的附加流程中所做的那样(只需将 xml 文件复制并粘贴到 RapidMiner 内的流程中)。 使用 Loop Attribtes 时请注意 RapidMiner 7.4 的新选项,其中可以重用当前的 ExampleSet 或为每次迭代返回带有单个示例集的集合。

    有关宏的更多详细信息,请查看此处:

    http://community.rapidminer.com/t5/RapidMiner-Studio-Knowledge-Base/How-to-Use-Macros/ta-p/32966

    %{macro}eval(%{macro}) 之间的区别尤其重要。

    示例流程:

    <?xml version="1.0" encoding="UTF-8"?><process version="7.4.000">
      <context>
        <input/>
        <output/>
        <macros/>
      </context>
      <operator activated="true" class="process" compatibility="7.4.000" expanded="true" name="Process">
        <process expanded="true">
          <operator activated="true" class="generate_data" compatibility="7.4.000" expanded="true" height="68" name="Generate Data" width="90" x="112" y="85"/>
          <operator activated="true" class="concurrency:loop_attributes" compatibility="7.4.000" expanded="true" height="82" name="Loop Attributes" width="90" x="313" y="85">
            <parameter key="reuse_results" value="true"/>
            <parameter key="enable_parallel_execution" value="false"/>
            <process expanded="true">
              <operator activated="true" class="generate_attributes" compatibility="7.4.000" expanded="true" height="82" name="Generate Attributes" width="90" x="380" y="34">
                <list key="function_descriptions">
                  <parameter key="%{loop_attribute}_new" value="1/eval(%{loop_attribute})"/>
                </list>
              </operator>
              <connect from_port="input 1" to_op="Generate Attributes" to_port="example set input"/>
              <connect from_op="Generate Attributes" from_port="example set output" to_port="output 1"/>
              <portSpacing port="source_input 1" spacing="0"/>
              <portSpacing port="source_input 2" spacing="0"/>
              <portSpacing port="sink_output 1" spacing="0"/>
              <portSpacing port="sink_output 2" spacing="0"/>
            </process>
          </operator>
          <connect from_op="Generate Data" from_port="output" to_op="Loop Attributes" to_port="input 1"/>
          <connect from_op="Loop Attributes" from_port="output 1" to_port="result 1"/>
          <portSpacing port="source_input 1" spacing="0"/>
          <portSpacing port="sink_result 1" spacing="0"/>
          <portSpacing port="sink_result 2" spacing="0"/>
        </process>
      </operator>
    </process>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-02
      • 1970-01-01
      • 1970-01-01
      • 2010-12-22
      • 1970-01-01
      相关资源
      最近更新 更多