Объединение данных

Важно!

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

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

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

Соединяет два набора данных.

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

Примечание

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

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

Обзор модуля

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

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

Настройка объединения данных

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

    Модуль можно найти в категории Преобразование данных в разделе Манипуляция.

  2. Подключите наборы данных к модулю Объединение данных.

    Модуль объединения данных не поддерживает правое внешнее соединение, поэтому, если необходимо, чтобы строки из определенного набора данных включались в выходные данные, этот набор данных должен находиться на входах Lefthand.

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

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

  5. Выберите вариант учитывать регистр при соединении с текстовым столбцом и необходимо убедиться, что соединение сохраняет регистр.

    Например, если выбрать этот параметр, будет считаться, A1000 что значение ключа отличается от a1000 значения.

    Если снять этот флажок, учет регистра не будет применяться и A1000 будет считаться таким же, как a1000 .

  6. Используйте раскрывающийся список Тип объединения для указания способа объединения наборов данных. типов

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

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

    • Полное внешнее объединение. Полное внешнее объединение возвращает все строки из левой таблицы (таблица1) и из правой таблицы (таблица2).

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

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

    • Левое полуобъединение. Левое полуобъединение возвращает только значения из левой таблицы, если значения ключевых столбцов совпадают.

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

    • Отмените выбор параметра, чтобы получить один ключевой столбец в результатах.
    • Оставьте параметр выбранным, чтобы просмотреть ключи из обеих входных таблиц.
  8. Запустите эксперимент или выберите модуль присоединить данные и выбранный Запуск, чтобы выполнить соединение.

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

Примеры

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

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

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

Ограничения

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

    Например, если оба набора данных имеют столбец с именем month, то столбец из левого набора данных останется в таком виде, а столбец из правого набора данных будет переименован в месяц (1).

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

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

  • Если при левом внешнем соединения какие-то значения отсутствуют, категориальный уровень создается для отсутствующих значений в левом наборе данных. Это происходит, даже если в объединенном (правом) наборе данных нет отсутствующих значений.

Как присоединить таблицу к составному ключу?

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

  • Выполнение скрипта R

    Например, используйте код, подобный входящей внутри скрипта R, для сцепления первого и второго столбцов входной таблицы данных с помощью дефиса в качестве разделителя. paste(inputdf$Col1,inputdf$Col2,sep="-")

  • Применение преобразования SQL

    Оператор объединения в SQLite имеет значение || .

Как соединить таблицы, у которых нет ключа?

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

Модуль добавления столбцов ведет себя так же, как R, и может объединять два набора данных построчно, если наборы данных имеют одинаковое число строк. Если наборы данных имеют другой размер, возникает ошибка.

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

Имя Тип Описание
Набор данных 1 Таблица данных Первый набор данных для соединения
Набор данных 2 Таблица данных Второй набор данных для соединения

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

Имя Диапазон Тип По умолчанию Описание
Присоединение ключевых столбцов для L Любой Выбор столбцов Выберите ключевые столбцы соединения для первого набора данных.
Присоединение ключевых столбцов для R Любой Выбор столбцов Выберите ключевые столбцы соединения для второго набора данных.
Учитывать регистр Любой Логическое значение True Указывает, разрешено ли сравнение с учетом регистра для ключевых столбцов.
Тип соединения Список Тип внутреннее соединение, Выберите тип соединения.
Сохранить правые ключевые столбцы в объединенной таблице Любой Логическое значение True Укажите, следует ли сохранять ключевые столбцы из второго набора данных в объединенном наборе данных.

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

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

Исключения

Исключение Описание
Ошибка 0001 Исключение возникает, если не удалось найти один или несколько столбцов указанного набора данных.
Ошибка 0003 Исключение возникает, если один или несколько входных аргументов имеют значение NULL или пусты.
Ошибка 0006 Исключение возникает, если параметр больше или равен определенному значению.
Ошибка 0016 Исключение возникает, если входные наборы данных, переданные модулю, должны содержать совместимые типы столбцов, но фактически это не так.
Ошибка 0017 Исключение возникает, если один или несколько указанных столбцов относятся к типам, которые не поддерживается в текущем модуле.
Ошибка 0020 Исключение возникает, если количество столбцов в некоторых наборах данных, переданных модулю, слишком мало.
Ошибка 0028 Исключение возникает в случае, если набор столбцов содержит повторяющиеся имена и это не разрешено.
Ошибка 0011 Исключение возникает, если аргумент для переданного набора столбцов не применяется ни к каким столбцам набора данных.
Ошибка 0027 Исключение возникает, если два объекта должны быть одинакового размера, но это не так.

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

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

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

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