Skip to content

Filter

Keep only the rows that match one or more conditions.

When to use this

  • You want to drop rows that do not belong in the downstream analysis (wrong region, inactive products, test data)
  • You want to split a file into segments by condition (for example, one branch for retail customers, another for wholesale)

What you need

  • One upstream data source wired into the Filter node
  • The column names you want to filter on (case-sensitive, as they appear in the upstream data)

Parameters

Set conditions in the side panel. Each row in the Conditions list is column · operator · value. The toggle at the top combines them:

Setting Options Description
Combinator AND, OR AND keeps rows that match every condition. OR keeps rows that match any condition.
Operator =, !=, >, <, >=, <=, contains, not contains How the column value is compared to the condition's value.

= and != compare as numbers when both the column value and the condition's value read as numbers, so 3, 3.0 and "3" are all equal to 3; any other value is compared as text, exactly as written. >, <, >=, <= convert both sides to numbers, and a non-numeric value fails the check: a column value that is not a number fails it on that row, and a condition's value that is not a number, such as ten or 5 kg, fails it on every row. contains and not contains test whether the condition's value appears anywhere in the column value, and they are case-sensitive: contains north does not match North.

A row with an empty cell in the column, such as one that a Concatenate or an outer join left without a value, matches no condition. Every operator drops it, != and not contains included.

If no conditions are configured, every row passes through.

What you get

The same columns as the input, with only the rows that pass the conditions.

Workflow wiring

flowchart LR
    n1["Import Data (orders.csv)"] --> n2["Filter (status = #quot;active#quot;)"]
    n2 --> n3["Aggregate"]
    n3 --> n4["Save Data"]

Common mistakes

  • Comparing numbers with >, <, >= or <= on a column that has non-numeric values. Those rows fail the check
  • Typing a value that is not a number, such as 5 kg, into a >, <, >= or <= condition. Every row fails it, so with AND nothing passes
  • Expecting contains to ignore case. contains north keeps northwest but drops North; add a second condition with the other spelling and combine them with OR
  • Mismatched column names. Names are case-sensitive and must match the upstream data exactly
  • Expecting OR behaviour when the toggle is set to AND (or vice versa). Toggle the AND / OR button at the top of the conditions list

Messages this node can show

A run gives this node 5 minutes. A node that takes longer stops with Time limit reached.

Like every node, it can also stop on the checks before a run and the run's limits.