Help Needed: -9999 Not Converting to Missing Values in KNIME Workflow
Hi everyone,
I’m having trouble replacing specific numeric values with missing values inside a looped CSV Reader, and I would really appreciate your help.
Context:
I have a workflow that loops through multiple CSV files (List Files/Folders → Table Row to Variable Loop Start → CSV Reader).
Each file contains several numeric columns where the value -9999 should be treated as missing.
The problem:
After reading the data with the CSV Reader, the -9999 values are still present.
I tried using Column Expressions (legacy) to replace -9999 with null, but the values are not being converted into missing cells as expected.
This is the expression I tested:
if (column(“PRECIPITAÇÃO TOTAL, HORÁRIO (mm)”) == -9999) null;
else column(“PRECIPITAÇÃO TOTAL, HORÁRIO (mm)”);
I selected Replace Column and changed the output type to Number (Double), but the -9999 values remain unchanged in the output table.
What I tried:
Changing the output type (String, Double, Float)
Making sure the expression runs on the correct column
Checking the data domain and column types
Using “Evaluate” inside the dialog, which seems to work, but the final output does not update
Testing inside and outside the loop (same behavior)
What I need:
I simply want every -9999 in numeric columns to become a true missing value (?) after the CSV Reader.
I’m not trying to convert anything to string — the columns should remain numeric.
I am attaching:
The CSV file I’m using for testing
If anyone has seen this behavior or knows the correct configuration to make Column Expressions replace numeric values with missing values, I would be extremely grateful.
Thanks in advance for any guidance!
Ricardo