Removing attributes where one or more of the examples are missing is easy using the "Select Attributes" operator with the option "no missing values".
If however, you want to additionally remove attributes where only a single example is valid and all the rest are missing, a neat way to do this is to use the "Remove Useless Attributes" operator. One of the parameters to this is "numerical min deviation" and this will remove any attribute with a deviation less than or equal to the value supplied which defaults to 0. Attributes with only a single valid value will have a deviation of 0 and will therefore be removed by this operator.
Search this blog
Saturday, 14 April 2012
Thursday, 22 March 2012
Operators that deserve to be better known: part III
Normalize
Of course this is already a well known operator but it has a useful option I discovered the other day. If you set the method to "proportion transformation", the normalization divides each numerical attribute with the sum of all the values for that attribute. This has the effect that the sum of each normalized attribute becomes 1.
This is much easier than using loop operators which would involve having a "loop examples" operator inside "loop attributes" with filtering, calculating sums, generating attributes and perhaps some attribute selection.
Of course this is already a well known operator but it has a useful option I discovered the other day. If you set the method to "proportion transformation", the normalization divides each numerical attribute with the sum of all the values for that attribute. This has the effect that the sum of each normalized attribute becomes 1.
This is much easier than using loop operators which would involve having a "loop examples" operator inside "loop attributes" with filtering, calculating sums, generating attributes and perhaps some attribute selection.
Friday, 2 March 2012
Operators that deserve to be better known: part II
Execute Process
This operator allows an entire process to be run from within another. This is good if you want to break a large process into smaller and more understandable chunks. It also encourages re-use of previously created processes especially if macros are used as parameters to control the behaviour of the called process.
The process to be run can be stored in a repository located on a different computer although the process runs on the local computer.
This operator allows an entire process to be run from within another. This is good if you want to break a large process into smaller and more understandable chunks. It also encourages re-use of previously created processes especially if macros are used as parameters to control the behaviour of the called process.
The process to be run can be stored in a repository located on a different computer although the process runs on the local computer.
Subscribe to:
Posts (Atom)