Options

Problem with Select Attributes

marcin_blachnikmarcin_blachnik Member Posts: 61 Guru
edited November 2018 in Help
Hello

I'd like to notice a problem with Select Attributes operator with "numeric_value_filter". Setting the "numeric condition" parameter RapidMiner displays the "Process Faild" window with the appropriat message string. It even doesn't work with the "Tutorial process"

By the way I also have some problems with the "Normalize" operator when using the "right click" and "Show ExampleSet Results" on the output port of any operator before the Normalize operator the displayed exampleSet includes the normalized attributes instead of original values. lead to an erroneous understanding of the results

Best regards

Marcin

Answers

  • Options
    MariusHelfMariusHelf RapidMiner Certified Expert, Member Posts: 1,869 Unicorn
    Hi, thanks for the report.
    marcin.blachnik wrote:

    Hello

    I'd like to notice a problem with Select Attributes operator with "numeric_value_filter". Setting the "numeric condition" parameter RapidMiner displays the "Process Faild" window with the appropriat message string. It even doesn't work with the "Tutorial process"
    As always, it would be a good idea to post an example process which triggers that error. I for one could not reproduce it - the process attached below works like a charm.
    By the way I also have some problems with the "Normalize" operator when using the "right click" and "Show ExampleSet Results" on the output port of any operator before the Normalize operator the displayed exampleSet includes the normalized attributes instead of original values. lead to an erroneous understanding of the results
    That's a known problem. It is caused by the Normalize operator, which modifies the data itself. You can overcome this by either activating the "create_view" parameter, or using Materialize directly before the Normalize operator.

    Best regards,
    Marius
    <?xml version="1.0" encoding="UTF-8" standalone="no"?>
    <process version="5.2.008">
      <context>
        <input/>
        <output/>
        <macros/>
      </context>
      <operator activated="true" class="process" compatibility="5.2.008" expanded="true" name="Process">
        <process expanded="true" height="116" width="480">
          <operator activated="true" class="generate_data" compatibility="5.2.008" expanded="true" height="60" name="Generate Data" width="90" x="179" y="30">
            <parameter key="number_examples" value="10"/>
          </operator>
          <operator activated="true" class="select_attributes" compatibility="5.2.008" expanded="true" height="76" name="Select Attributes" width="90" x="380" y="30">
            <parameter key="attribute_filter_type" value="numeric_value_filter"/>
            <parameter key="numeric_condition" value="&gt; -9.5"/>
          </operator>
          <connect from_op="Generate Data" from_port="output" to_op="Select Attributes" to_port="example set input"/>
          <connect from_op="Select Attributes" from_port="example set output" 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>
  • Options
    MariusHelfMariusHelf RapidMiner Certified Expert, Member Posts: 1,869 Unicorn
    I just noticed that you have to add a space between the operator and the value, e.g. "> 2" will work, whereas ">2" does not. This is certainly less than optimal, but it's also stated in the documentation. However, I created an internal bugreport to fix that.

    Happy Mining!
    ~Marius
  • Options
    marcin_blachnikmarcin_blachnik Member Posts: 61 Guru
    Thanks for your answer.
    The problem was with the "space" between characters :).
    What is interesting that I've checked the "Tutorial Process" avaliable in the development version (RM 5.3) and it also didn't work because of the space, so if you won't update the operator before the new release of RM please correct the "Tutorial Process"

    <?xml version="1.0" encoding="UTF-8" standalone="no"?>
    <process version="5.3.000">
      <context>
        <input/>
        <output/>
        <macros/>
      </context>
      <operator activated="true" class="process" compatibility="5.3.000" expanded="true" name="Process">
        <process expanded="true" height="359" width="663">
          <operator activated="true" class="retrieve" compatibility="5.3.000" expanded="true" height="60" name="Labor-Negotiations" width="90" x="179" y="120">
            <parameter key="repository_entry" value="//Samples/data/Labor-Negotiations"/>
          </operator>
          <operator activated="true" class="select_attributes" compatibility="5.3.000" expanded="true" height="76" name="Select Attributes" width="90" x="380" y="120">
            <parameter key="attribute_filter_type" value="numeric_value_filter"/>
            <parameter key="attribute" value="working-hours"/>
            <parameter key="attributes" value="|wage-inc-1st|wage-inc-2nd|wage-inc-3rd"/>
            <parameter key="regular_expression" value="w.*|.*y.*"/>
            <parameter key="use_except_expression" value="true"/>
            <parameter key="except_regular_expression" value=".*[0-9].*"/>
            <parameter key="value_type" value="numeric"/>
            <parameter key="use_value_type_exception" value="true"/>
            <parameter key="except_value_type" value="real"/>
            <parameter key="block_type" value="value_series_end"/>
            <parameter key="except_block_type" value="value_series_end"/>
            <parameter key="numeric_condition" value="&lt; 5&amp;&amp;&gt;0"/>
            <parameter key="include_special_attributes" value="true"/>
          </operator>
          <connect from_op="Labor-Negotiations" from_port="output" to_op="Select Attributes" to_port="example set input"/>
          <connect from_op="Select Attributes" from_port="example set output" to_port="result 1"/>
          <connect from_op="Select Attributes" from_port="original" to_port="result 2"/>
          <portSpacing port="source_input 1" spacing="0"/>
          <portSpacing port="sink_result 1" spacing="90"/>
          <portSpacing port="sink_result 2" spacing="0"/>
          <portSpacing port="sink_result 3" spacing="0"/>
        </process>
      </operator>
    </process>
    One more time thank you for your help
    Marcin
  • Options
    MariusHelfMariusHelf RapidMiner Certified Expert, Member Posts: 1,869 Unicorn
    marcin.blachnik wrote:

    What is interesting that I've checked the "Tutorial Process" avaliable in the development version (RM 5.3) and it also didn't work because of the space, so if you won't update the operator before the new release of RM please correct the "Tutorial Process"
    Done :)
Sign In or Register to comment.