Как сравнить два набора данных и пометить нарушение правила - PullRequest
0 голосов
/ 14 января 2019

Застрял в этой проблеме на некоторое время. Я не могу продумать логику и реализацию с использованием Alteryx для достижения желаемых результатов.

Есть два набора данных, приведенных ниже -

Набор данных 1

Risk ID     Rule ID     Code
FR01        00Q         FBREV
FR01        00Q         FBREV1
FR01        00Q         FBREV2
FR02        02D         FBREV
FR02        02D         FBREV12

Сочетание риска и идентификатора правила в первом наборе данных приводит к уникальному списку кодов.

Набор данных 2

Column1     Code
User1       FBREV
User1       FBREV1
User2       FBREV

Пользователи отмечены кодами, которые они используют.

Когда они используют коды, принадлежащие к одному семейству Risk и Rule ID, это является нарушением.

Я просто хочу иметь возможность отмечать тех пользователей, которые нарушили это правило.

В вышеупомянутых наборах данных Пользователь1 нарушил правило, поскольку он использовал два кода (FBREV и FBREV1). Оба кода подпадают под правило (FR01 + 00Q). Следовательно, мне нужно иметь возможность помечать пользователя как нарушителя правил. Пользователь2 не является нарушителем правил, поскольку он не использовал код (FBOPO).

Я ломал голову над этим уже несколько дней.

1 Ответ

0 голосов
/ 17 января 2019

По сути, вы хотите сгруппировать уникальные идентификаторы RiskID / RuleID, под которыми попадают коды, используемые пользователями, а затем найти, где у пользователя более одной комбинации RiskID / RuleID.

Alteryx workflow

Верхний ввод текста - набор данных 1, нижний ввод текста - набор данных 2. Формула объединяет RiskID и RuleID:

[Risk ID] + [Rule ID]

Соединение в коде

Суммируйте группировку по Risk & RuleID и Field1 (пользователь) и получите счетчик каждого Risk & RuleID:

Summarize actions

Наконец, отфильтруйте тех пользователей, чей счетчик Risk & RuleID превышает 1

Вывод (true):

User1

...