У меня есть две таблицы / фреймы данных.
Первая таблица (ID) одна выглядит так:

Вторая таблица (имена) выглядит следующим образом:

Я хочу сопоставить переменную «IDTag» с первыми несколькими буквами переменной «Имя».В других языках программирования я выполнял бы foreach и пробегал каждый из IDTags для каждой из строк второй таблицы (сопоставляя IDTag с первыми n символами переменной «Name», где n - количество символов IDTagв вопросе.
В R кажется, что должен быть способ сделать это, и я посмотрел на pmatch и несколько других, но те или иные, кажется, не совпадают вообще, или когда я пытаюсьиспользовать их, придумать несколько NA в тех местах, где я бы их не ожидал (пример кода с использованием приведенных выше таблиц:
NameMatches <- Names[pmatch(
ID$IDTag,
Names$Name,
duplicates.ok = TRUE
),]
У меня такое ощущение, что я иду по этому поводу с неверной теорией или концепциейпоэтому я смотрю, может ли кто-нибудь подсказать самый простой / ясный способ сделать это точно.
Редактирование исходного вопроса для ответа на комментарии ...
Ожидаемый результат будет выглядеть примерно такэто (то есть - все столбцы таблицы Имен с добавлением столбца группы из таблицы идентификаторов. Многократное совпадениеОжидается - отношения один ко многим между таблицами идентификаторов и имен): 
Спасибо,