Where is the "Write Weights" ans "Read Weights" operators?

yasinkaya
yasinkaya New Altair Community Member
edited November 5 in Community Q&A
How do I write to the file the features (weights output) I get in the feature selection operator.
Older versions of the RM had "write weights" and "read weights" operators for this purpose. But now, in the newest version they are depreciated.

Best Answers

  • tftemme
    tftemme New Altair Community Member
    Answer ✓
    Hi @yasinkaya

    The Data to Weights operator unfortunately support a different usecase (creating Weights for the attributes of the provided ExampleSet).
    What you are looking for is the ExampleSet to Weights operator from the converters extension (install it over the marketplace).

    Hopes this helps,
    Best regards,
    Fabian 
  • Marco_Boeck
    Marco_Boeck New Altair Community Member
    edited October 2019 Answer ✓
    Hi,

    For bi-directional (aka save -> read again) workflows of our internal data representations, we want users to use the repository. That way, we can be more confident the files are not broken by accident due to external editing (which is not a good idea), and we also avoid cluttering data all over the disk which would be easier to lose. Furthermore, we also don't want a separate operator for every data/model/etc object we have, so we unified it via Store and Retrieve a long time ago.
    The last remnants of the past like Write and Read Weights have therefore been eliminated and will not come back.

    Regards,
    Marco

Answers

  • MartinLiebig
    MartinLiebig
    Altair Employee
    Hi,
    we recommend to use Weights to Data first and then use the normal Write-CSV or Write-Excel if you need it readable. Otherwise you can use Store to write it into the repository.

    Best,
    Martin
  • yasinkaya
    yasinkaya New Altair Community Member
    edited October 2019
    Thank you Mr. @mschmitz.

    Then how do I do the opposite of that?

    I can't get true features saved to CSV file when I try to filter data using "read csv" and "data to weights". (Edit: Corrected this sentence, I didn't get an error message)

    How to perform the function "read weights".


    <?xml version="1.0" encoding="UTF-8"?><process version="9.4.001">
      <context>
        <input/>
        <output/>
        <macros/>
      </context>
      <operator activated="true" class="process" compatibility="9.4.001" expanded="true" name="Process">
        <parameter key="logverbosity" value="init"/>
        <parameter key="random_seed" value="2001"/>
        <parameter key="send_mail" value="never"/>
        <parameter key="notification_email" value=""/>
        <parameter key="process_duration_for_mail" value="30"/>
        <parameter key="encoding" value="SYSTEM"/>
        <process expanded="true">
          <operator activated="true" class="retrieve" compatibility="9.4.001" expanded="true" height="68" name="Retrieve EMODB_Big_20FS" width="90" x="112" y="85">
            <parameter key="repository_entry" value=""/>
          </operator>
          <operator activated="true" class="read_csv" compatibility="9.4.001" expanded="true" height="68" name="Read CSV" width="90" x="112" y="238">
            <parameter key="csv_file" value="Rapid_FS_Log.csv"/>
            <parameter key="column_separators" value=";"/>
            <parameter key="trim_lines" value="false"/>
            <parameter key="use_quotes" value="true"/>
            <parameter key="quotes_character" value="&quot;"/>
            <parameter key="escape_character" value="\"/>
            <parameter key="skip_comments" value="false"/>
            <parameter key="comment_characters" value="#"/>
            <parameter key="starting_row" value="1"/>
            <parameter key="parse_numbers" value="true"/>
            <parameter key="decimal_character" value="."/>
            <parameter key="grouped_digits" value="false"/>
            <parameter key="grouping_character" value=","/>
            <parameter key="infinity_representation" value=""/>
            <parameter key="date_format" value=""/>
            <parameter key="first_row_as_names" value="true"/>
            <list key="annotations"/>
            <parameter key="time_zone" value="SYSTEM"/>
            <parameter key="locale" value="English (United States)"/>
            <parameter key="encoding" value="SYSTEM"/>
            <parameter key="read_all_values_as_polynominal" value="false"/>
            <list key="data_set_meta_data_information"/>
            <parameter key="read_not_matching_values_as_missings" value="true"/>
            <parameter key="datamanagement" value="double_array"/>
            <parameter key="data_management" value="auto"/>
          </operator>
          <operator activated="true" class="data_to_weights" compatibility="9.4.001" expanded="true" height="82" name="Data to Weights" width="90" x="246" y="238">
            <parameter key="normalize_weights" value="false"/>
            <parameter key="sort_weights" value="true"/>
            <parameter key="sort_direction" value="ascending"/>
          </operator>
          <operator activated="true" class="select_by_weights" compatibility="9.4.001" expanded="true" height="103" name="Select by Weights" width="90" x="313" y="85">
            <parameter key="weight_relation" value="equals"/>
            <parameter key="weight" value="1.0"/>
            <parameter key="k" value="10"/>
            <parameter key="p" value="0.5"/>
            <parameter key="deselect_unknown" value="true"/>
            <parameter key="use_absolute_weights" value="true"/>
          </operator>
          <connect from_op="Retrieve EMODB_Big_20FS" from_port="output" to_op="Select by Weights" to_port="example set input"/>
          <connect from_op="Read CSV" from_port="output" to_op="Data to Weights" to_port="example set"/>
          <connect from_op="Data to Weights" from_port="weights" to_op="Select by Weights" to_port="weights"/>
          <connect from_op="Data to Weights" from_port="example set" to_port="result 2"/>
          <connect from_op="Select by Weights" from_port="weights" 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"/>
          <portSpacing port="sink_result 3" spacing="0"/>
        </process>
      </operator>
    </process>

  • varunm1
    varunm1 New Altair Community Member
    Hello @yasinkaya

    Looks like your process flow is fine. Can you inform the error details?
  • yasinkaya
    yasinkaya New Altair Community Member
    There is no error. Sorry. But it don't give expected output from the weights port. I'll add a picture. 

  • yasinkaya
    yasinkaya New Altair Community Member
    It is not select features using saved features to CSV file. 
    Why Write Weights and Read Weights deprecated?

    If there is no operator with the same convenience instead, why did these operators removed?
  • tftemme
    tftemme New Altair Community Member
    Answer ✓
    Hi @yasinkaya

    The Data to Weights operator unfortunately support a different usecase (creating Weights for the attributes of the provided ExampleSet).
    What you are looking for is the ExampleSet to Weights operator from the converters extension (install it over the marketplace).

    Hopes this helps,
    Best regards,
    Fabian 
  • Marco_Boeck
    Marco_Boeck New Altair Community Member
    edited October 2019 Answer ✓
    Hi,

    For bi-directional (aka save -> read again) workflows of our internal data representations, we want users to use the repository. That way, we can be more confident the files are not broken by accident due to external editing (which is not a good idea), and we also avoid cluttering data all over the disk which would be easier to lose. Furthermore, we also don't want a separate operator for every data/model/etc object we have, so we unified it via Store and Retrieve a long time ago.
    The last remnants of the past like Write and Read Weights have therefore been eliminated and will not come back.

    Regards,
    Marco
  • yasinkaya
    yasinkaya New Altair Community Member
    Thanks you very much @Marco_Boeck and @tftemme.
    This two solutions enough for me.