Loop operator does not output Generated attributes for later use

pblack476pblack476 Member Posts: 83 Maven
edited November 2019 in Help
Is there a workaround for this? I am using a Loop Parameter operator to generate a bunch of moving averages. Later on the same process I would like to select some of those newly created attributes but they are never available from the select attributes operator window. The only way for me to see them is to export the dataset to an excel file and then import it again as a new file. Then the attributes appear as normal.

Best Answer

Answers

  • pblack476pblack476 Member Posts: 83 Maven
    @lionelderkrikor Got it! I did not know you could write the attribute name there if it was not listed. Surely this should be a feature. If you want to loop through generated attributes then you are in for some tedious work manually writing down every generic name.
  • tftemmetftemme Administrator, Employee, RapidMiner Certified Analyst, RapidMiner Certified Expert, RMResearcher, Member Posts: 164 RM Research
    Hi @pblack476

    RapidMiner has the concept of so called meta data. This means RM evaluates the process before execution and tries to update the meta data at each of the operators without actually executing the process. This allows RM for example to provide a list of attributes when you configure the Select Attribute operator. Sometimes this meta data propagation is not possible (for example if you don't have any meta data information about the raw data), thus the attribute selection list is empty in this case.

    But in your case there could also be a bug in the meta data propagation. To check this, we would need your process and input data. 

    Best regards,
    Fabian
  • pblack476pblack476 Member Posts: 83 Maven
    edited November 2019
    @tftemme Here is my data and process. See that on the select attributes at the end I cannot select any of the data that was generated by the loop parameter process inside the subprocess. But I CAN just write their names manually.

    What it looks like to me is that the loop operator is not sending the correct metadata out. It does send whatever attribute selection I had on the inner operator. But it does not send out the metadata of looped results

  • tftemmetftemme Administrator, Employee, RapidMiner Certified Analyst, RapidMiner Certified Expert, RMResearcher, Member Posts: 164 RM Research
    Hi @pblack476

    Unfortunately for me every thing is fine, so I cannot reproduce your problem. Could you please check if you have the latest version of RapidMiner Studio and all extensions installed. You can check this by open the Marketplace and click on the 'Updates' tab which checks for newer versions. Especially please check if you are on the latest version of the Operator Toolbox extension (which is 2.2.0). There was a fix in the meta data propagation for the Merge Attributes operator in 2.0.0).

    If you have the latest versions of RM Studio and all extensions, could you provide the rapidminer-studio.log file (located under $User/.RapidMiner/). 

    Best regards,
    Fabian
  • pblack476pblack476 Member Posts: 83 Maven
    @tftemme Does it look normal to you? What attributes do you see when you click on select attributes? Because the dataset has in total 367 attributes and I can only see around 8 of them on the operator. I can somewhat get round it by invert-selecting the ones I don't want but I cannot be very specific If I wanted to.

    Anyway, here is my Log file after fiddling around with the process a bit and running it a few time to see if something useful is logged.

  • pblack476pblack476 Member Posts: 83 Maven
    @tftemme Any news for me on this? I realize it must be bothersome but It would really help to know if this is something that is happening just on my machine or not. Thanks!
  • tftemmetftemme Administrator, Employee, RapidMiner Certified Analyst, RapidMiner Certified Expert, RMResearcher, Member Posts: 164 RM Research
    Hi @pblack476

    Sorry took me a few days to find the time to look into this again. I think I misunderstood you in the first run. So probably a few attributes appear in the selection, but not for the other iterations of the Loop, correct?

    If this is correct, I unfortunately have to say that there is no workaround for this. The Loop operator only evaluates the Meta Data for its first iteration, and the meta data of the collection at the output port only contains the information of the first iteration.

    I would suggest your kind of workaround with intermediate Store. But you don't need to write it as an excel file, you can use the Store operator to store the ExampleSet after the Merge Attributes operator in your repository. Then use a new process to Retrieve the ExampleSet from the repository and process them further. Thus you also separate different steps of your analysis, which can improve overview and you don't need to rerun the whole analysis chain if you change some step in the chain.

    Best regards,
    Fabian

Sign In or Register to comment.