удалить дубликаты в наборе полей в любой строке - PullRequest
0 голосов
/ 30 апреля 2019

Используя Knime, я пытаюсь удалить дубликаты во всех строках для набора столбцов через узел Groupby.Можете ли вы рассказать, как реализовать это, или я могу использовать любой другой узел, чтобы сделать это.Сначала я разделил свою таблицу на набор столбцов, например, набор 1 -> Col1, Col2, Col3, Col4, набор 2 -> Col5, col6, Col7, col8, и вот так у меня есть 10 наборов (по 4 столбца в каждом).) Теперь я хочу проверить, есть ли у нас одни и те же данные в каком-либо конкретном наборе. Допустим, ниже приведены значения, которые есть в наборе 1 Col1 имеет 4 Col2 имеет 4 Col3 имеет 4 Col4 имеет 4

, тогда я сохраню Col1 как 4и значения в Col2, col3, col4 будут равны 'null'.

Подскажите, пожалуйста, как сделать это с помощью узла GroupBy в KNIME

. Я пробовал использовать другие узлы, такие как константа Value.Фильтр столбцов, математическая формула, механизм правил, но кажется, что ничего не работает.

Сначала я разделил свою таблицу на набор столбцов, таких как набор 1 is -> Col1, Col2, Col3, Col4 set 2 is--> Col5, col6, Col7, col8 и так у меня есть 10 комплектов (с 4 столбцами в каждом), теперь я хочу проверить, есть ли у нас одни и те же данные в каком-либо конкретном наборе. Скажем, ниже значения есть в наборе 1 Col1 имеет 4 Col2имеет 4 Col3 имеет 4 Col4 имеет 4

тогда я буду держать Col1 как4 и значения в Col2, col3, col4 будут 'нулевыми'.

1 Ответ

0 голосов
/ 30 апреля 2019

Не могу сделать это в узле GroupBy.Вы можете получить уникальные значения в узле GroupBy, но вам нужна некоторая логика, которая определит, что это значение является дубликатом, и вместо него будет поставлен нулевой или какой-либо другой идентификатор.Я советую вам использовать узел Rule Engine со следующим синтаксисом для последнего столбца:

$column4$ MATCHES $column1$ OR $column4$ MATCHES $column2$ OR $column4$ MATCHES $column3$ => "null"
TRUE => $column4$

После этого добавьте еще два узла Rule Engine с синтаксисом для column3 и column2.Вам не нужно ничего делать для column1.

...