Trouble building recursive VIF-based feature elimination in KNIME (IF Switch + Recursive Loop)

I am trying to implement recursive multicollinearity removal using VIF in KNIME.

Goal:

Iteratively remove the column with the highest VIF if VIF > threshold (5).

Stop when no VIF > 5 remains.

Workflow Logic

1.

Initial dataset → Recursive Loop Start

1.

Compute VIF (custom component from KNIME Hub)

1.

Sort VIF descending → Top k Row Filter (k=1)

1.

Rule Engine

if top VIF > 5 →

"REMOVE"

else

"STOP"

1.

Table Row to Variable

Extract top-VIF column name → variable

1.

Column Name Extractor

Get full list of columns

1.

Reference Row Filter

Remove the column if action = REMOVE

Else pass data unchanged

1.

IF Switch → End IF → Recursive Loop End

Issue

Everything works except wiring the loop correctly.

*

The Recursive Loop End executes, but

*

The Recursive Loop Start bottom feedback port remains empty in my setup

*

So workflow doesn’t allow execution as a full loop

I get stuck deciding which output should connect to the feedback input on Recursive Loop Start.

Can any one please help with what I am missing here?

Best Regards,

KNIME_project.knwf