arbitrary attribute metadata

kgeiskgeis Member Posts: 5 Contributor II
edited June 2019 in Help
I would like to be able to attach arbitrary metadata to an attribute.  For example, a flag that says whether it is possible for that attribute to be null/missing.  Certain of my custom learners would understand this metadata.  I only really need this in the API, not necessarily the UI.

I've tried to figure out how to do this with the existing API.  I could have my own implementation of Attribute, but then I would also need my own BinomialAttribute, DateAttribute, etc.  And then, I would need to modify AttributeFactory; I see no support for replacing the AttributeFactory.  Maybe AttributeFactory should be a singleton object, not a set of static methods (except for something like setInstance/getInstance.) 


  • landland RapidMiner Certified Analyst, RapidMiner Certified Expert, Member Posts: 2,531 Unicorn
    perhaps it would be a better solution not to change the attributes, but implement an own exampleset, providing a method for getting arbitrary meta data on the attributes. It could simply store a map from attribute to your meta data. Your learner then would only need to ensure, it get's the correct type of exampleset.

  • kgeiskgeis Member Posts: 5 Contributor II
    Thanks for the idea!
  • kgeiskgeis Member Posts: 5 Contributor II
    I've realized that this solution does not work very well.  Many pre-processing operators will return a new example set, and it will not contain the attribute metadata I want.
  • cherokeecherokee Member Posts: 82 Maven

    You could create another IOObject that contains your meta data and pass it around with you true data. Your learners just need to have another ioport.

    Best regards,

    P.S.: If you don't use preprocessing operators Sebastians solution works. I've used it some time ago.
Sign In or Register to comment.