Удаление дублирующихся строк

Важно!

Поддержка Студии машинного обучения (классической) будет прекращена 31 августа 2024 г. До этой даты рекомендуется перейти на Машинное обучение Azure.

Начиная с 1 декабря 2021 года вы не сможете создавать новые ресурсы Студии машинного обучения (классической). Существующие ресурсы Студии машинного обучения (классическая версия) можно будет использовать до 31 августа 2024 г.

Поддержка документации по ML Studio (классической) прекращается, а сама документация может не обновляться в будущем.

Удаляет повторяющиеся строки из набора данных.

Категория: Преобразование или управление данными

Примечание

применимо к: только Машинное обучение Studio (классическая модель)

Подобные модули перетаскивания доступны в конструкторе машинного обучения Azure.

Обзор модуля

в этой статье описывается использование модуля удаления повторяющихся строк в Машинное обучение Studio (классическая модель) для удаления потенциальных дубликатов из набора данных.

Например, данные представляют несколько записей для пациентов и выглядят следующим образом.

PatientID Инициалы пол; возраст; Поступление
1 F.M. M 53 Январь
2 F.A.M. M 53 Январь
3 F.A.M. M 24 Январь
3 F.M. M 24 Февраль
4 F.M. M 23 Февраль
F.M. M 23
5 F.A.M. M 53

Видно, что в этом примере есть несколько столбцов с потенциально повторяющимися данными. Действительно ли они являются дубликатами, зависит от того, что вы знаете о данных.

  • Например, вам может быть известно, что у многих пациентов одинаковое имя. Тогда вы не будете исключать дубликаты, используя столбцы имени, а будете работать только со столбцами идентификаторов. Таким образом, отфильтровываются только строки с повторяющимися значениями идентификатора, независимо от того, имеют ли пациенты одинаковое имя или нет.

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

Чтобы задать критерии для определения повторяющихся строк, укажите один столбец или набор столбцов для использования в качестве ключей. Две строки считаются повторяющимися, только если значения во всех ключевых столбцах равны.

При запуске модуля он создает подходящий набор данных и возвращает набор строк, не имеющих дубликатов в наборе указанных столбцов.

Важно!

Исходный набор данных не изменяется; этот модуль создает новый набор данных, который фильтруется для исключения дубликатов на основе указанных критериев.

Как использовать удаление повторяющихся строк

  1. Добавьте модуль в эксперимент. Модуль Удаление повторяющихся строк можно найти в разделе Преобразование данных, Управление.

  2. Подключите набор данных, который необходимо проверить на наличие повторяющихся строк.

  3. В разделе Key column selection filter expression (Выражение фильтра выбора ключевого столбца) в области Свойства щелкните Launch column selector (Запустить средство выбора столбцов), чтобы выбрать столбцы для обнаружения дубликатов.

    В этом контексте ключ не является уникальным идентификатором. Все столбцы, выбранные с помощью средства выбора столбцов, назначаются в качестве ключевых столбцов. Все невыбранные столбцы считаются неключевыми столбцами. Сочетание столбцов, выбранных в качестве ключей, определяет уникальность записей. (представьте, что это SQLная инструкция, использующая несколько соединений с равенством.)

    Примеры:

    • "Я хочу убедиться, что идентификаторы уникальны": выберите только столбец идентификаторов.
    • "Я хочу убедиться, что сочетание имени, фамилии и идентификатора уникально": выберите все три столбца.
  4. Установите флажок Retain first duplicate row (Сохранить первую из повторяющихся строк), чтобы указать, какая строка должна возвращаться при обнаружении дубликатов:

    • Если этот флажок установлен, возвращается первая строка, а другие отбрасываются.
    • Если снять этот флажок, в результатах будет сохранена последняя повторяющаяся строка, а другие будут удалены.

    Сведения о том, как обрабатываются значения миссиннг, см. в разделе Технические примечания .

  5. Запустите эксперимент или щелкните модуль и выберите Выполнить выбранное.

  6. Чтобы просмотреть результаты, щелкните модуль правой кнопкой мыши, выберите пункт набор данных результатови нажмите кнопку визуализировать.

Совет

Если результаты сложно понять или вы хотите исключить некоторые столбцы из рассмотрения, можно удалить столбцы с помощью модуля Выбор столбцов в наборе данных.

Примеры

Примеры использования этого модуля см. в Коллекция решений ии Azure:

  • Обнаружение молочной железы рака: Удаление повторяющихся строк используется для консолидации обучающих и проверочных наборов данных после добавления столбцов компонентов.

  • Совет по фильму. использует Удаление повторяющихся строк , чтобы убедиться, что для каждого фильма определена только одна Оценка пользователя.

  • Анализ тональности в Twitter: Удаление повторяющихся строк применяется только к столбцам идентификаторов и популярности, чтобы гарантировать, что для каждого фильма существует только одно значение ранжирования по порядковому номеру . Иными словами, фильм не может быть одновременно и первым, и третьим, поэтому используется одно значение, даже если пользователи были по-разному настроены для фильма.

Технические примечания

В этом разделе содержатся сведения о реализации, советы и ответы на часто задаваемые вопросы.

Сведения о реализации

Принцип работы модуля заключается в циклическом просмотре всех строк входного набора данных. Он собирает в выходной набор данных-кандидат все строки, в которых в первый раз отображается уникальное сочетание значений ключевых столбцов.

Тип массива столбца сохраняется независимо от результатов фильтрации строк. Вы не можете принудительно присвоить массиву определенный тип данных с помощью фильтрации недопустимых значений. Тип массива столбца основан на всех значениях в столбце. Это ограничение также применяется при фильтрации недостающих значений.

Алгоритм, используемый для сравнения значений данных, является хэш-принудительным.

Отсутствующие значения

Входной набор данных может содержать отсутствующие значения в неключевых столбцах и ключевых столбцах. Эти правила применяются к отсутствующим значениям:

  • Отсутствующее значение считается допустимым значением в ключевых столбцах. Отсутствующие значения могут присутствовать в обоих ключах.

  • В разреженном наборе данных отсутствующие значения считаются равными, только если они равны представлению по умолчанию разреженного значения.

  • Для ключевых столбцов отсутствующее значение считается равным другим отсутствующим значениям, но неравным присутствующим значениям.

Ожидаемые входные данные

Имя Тип Описание
Dataset Таблица данных Входной набор данных

Параметры модуля

Имя Диапазон Тип По умолчанию Описание
Выражение фильтра выбора ключевого столбца any Выбор столбцов Выбрать ключевые столбцы, используемые для поиска дубликатов.
Сохранить первую из повторяющихся строк any Логическое Да Укажите, следует ли сохранить первую строку из набора дубликатов и удалить остальные. Если значение равно false, будет сохранена последняя из повторяющихся строк.

Выходные данные

Имя Тип Описание
Набор данных результатов Таблица данных Отфильтрованный набор данных

Исключения

Исключение Описание
Ошибка 0003 Исключение возникает, если один или несколько входных наборов данных имеют значение NULL или пусты.
Ошибка 0020 Исключение возникает, если количество столбцов в некоторых наборах данных, переданных модулю, слишком мало.
Ошибка 0017 Исключение возникает, если один или несколько указанных столбцов относятся к типу, который не поддерживается в текущем модуле.

список ошибок, относящихся к модулям студии (классическая версия), см. в разделе Машинное обучение коды ошибок.

список исключений API см. в разделе Машинное обучение REST API коды ошибок.

См. также раздел

Оперирование
Список модулей в алфавитном порядке