Hi @badger101,
The new Row Filter node is for the most part more powerful than its predecessor since you can include multiple conditions to narrow down the filtering, whereas previously it was based on just a single column. There have been some cases where options were no longer available, as reported here with respect to KNIME 5.3 New Row Filter neither supports wildcard, regex, boundary filtering etc.).
In more recent 5.3.x versions (e.g. 5.3.2) this has been addressed, although I cannot be certain some edge cases don’t remain, but I haven’t seen any issues myself.
e.g. filtering on a numeric column in the initial 5.3 release, as posted by @mwiegand in the above link:
but in 5.3.2 the options have been extended again for better compatibility:
Boundary conditions in the old “classic” row filter are now entered as two conditions instead of one, so it’s slightly more long-winded, but also more flexible.
In the now deprecated row filter, I could bring back rows where _id is between 10 and 50:
In the new row filter I would specify the boundaries as individual conditions:
I could also add further conditions on other columns which makes this new node generally more powerful.
If you do find functionality in the old Row Filter that you cannot see how to do in the new node, obviously please raise it as it is useful for everybody to know about it, and possibly there is actually a way of doing it. However, you can still use the old Row Filter in KNIME if you really need to by entering:
Row Filter //deprecated
in the search when adding a node:
I think you might need to switch to Modern UI though to find the deprecated nodes.
Make sure you type //deprecated
exactly as above, in lower case
In Modern UI, if you open the node palette on the left, you can find all deprecated nodes by simply type //deprecated in the search box
In your example workflow in the thread that you posted, if this is opened in KNIME 5.3.2, the deprecated versions of the Row Filter node are included, probably because the changes to the new node likely make too complex a task to convert the config of the older node.
However, each of the Row Filters from those workflows could be manually converted to the new way as follows:
becomes
and
becomes
String to Number now
For the String to Number node, if you specify the output type as “Integer”, then you will get the results you see because an Integer data type can only support numbers in the range -2,147,483,647 to 2,147,483,647
This range hasn’t changed, but what has changed is that in the old String to Number node, the default output data type was Double which supports a higher level of precision. For longer integers you should choose Long as the output, which gives you about 19 digits before it too will fail. This is consistent with the old node.
screenshots from KNIME 4.7.8:
(convert to Integer)
(convert to Double - notice loss of precision at Row3 to Row6)
(convert to Long - greater precision than Double, but cannot handle >19 digits)
BTW the 5.4 release date re the new Expression Row Filter is currently slated for 6 December.