How to find +- 1,96 std. deviation from mean using Knime?


I have a simple workflow where an table is conected to "statistcs" node. After I have obtained the std. deviation from this latter node, how could I find +- 1,96 std. deviation from mean? The idea is apply it to filter data from the original table.

I tried to use "row filter" node but I couldn't find any way...

Thanks in advance,


Hi Cadu,

you could calculate the bound with a math expression node and then apply a rule engine.

Otherwise try to use the Outlier Removal node from the HCS-Tools extension. With this node you don't need any precalculation, just select the columns you would like to filter and set the factor (1.96 in your case).


Hi Cadu,

Unfortunately I couldnt get HCS's Outlier Removal node to work, complaining about "Matrix Must Have At Least One Column". Maybe its because they are Integers columns I am using I dont know!

Anyway, the way I would do it, is just after the Statistics node, use a "Column Filter" node so you only have the Stats on the column to apply filtering too.

Now you a "Transpose" node, you now have columns labelled as Mean, St.Dev etc,and should just have one row.

Use a Maths node and do the expression of "Mean Column+St.Dev Column" and call the Column "Max Limit", take another Maths node and do the expression of "Mean Column-St.Dev. Column" and call the Column "Min Limit". Now use a Column Filter to leave just the "Max Limit" and "Min Limit" columns. Finally complete this with a "TableRow to Variable" node. These limits are now accessible as variables.

Connect up a Row Filter node to your dataset you want to filter on, and right click on its node to "show variable ports" and connect a variable line from the "Table Row to Variable" node to the "Row Filter" node. Inside the "Row Filter" node go to flow variables tab, and next to the Upper Bound and Lower Bound, choose the Max Limit and Min Limit variables from the dropdown menus.

That should be it.


Hi Simon,

yes, there is still a bug that the Outlier Removal node does not take Integers. We will fix it with the next release.