There are two kinds of missing data - one where it shows up as "?" - For this the Missing Value node works great to provide a default value.
The second kind of missing data is ull string that has no value but is not considered "missing" by Knime as it shows as null not "?".
I there an easy way (i.e., better than Java Snippet) to replace these nulls with a default value?
What I would really like to see is a check box in the Missing Value node configuration that let's you tell it to include nulls as well as missing values. This would save a lot of work as it handles both situations simultaneously which is often what you want.
Same concept for nodes that filter etc on missing values - check box there for null values would be excellent too.
You can use the Rule Engine node to solve this problem.
The point is, that a zero length string is not the same as a missing value.
Thanks for the suggestion, it is appreciated - I think it will work but it is still more effort than a check box in the Missing Value and filter nodes. To filter on null or missing would require 3 nodes - rule engine, row filter, and then column filter to strip the test column set by rule engine. For missing value it is only one node (Rule Engine) but it requires 3 lines of rules.
Yes they are not the same, and sometimes that difference is important, but in many cases they are effectively the same and you want to provide a default value that is the same for either situation.
You can do it with one node;
Ruled based row filter node.
And in case you need to manipulate the rules (like using different columns or not using all rules), the Table Row to Variable Loop Start can be an even better option (no need to use Java Snippet or Java Edit Variable nodes, String Manipulator is sufficient, better for loops).