Страницы: 1
RSS
Сопоставить названия категорий между собой
 
В столбце А через разделитель > указаны категории ПОСТАВЩИКА. В столбце В через разделитель > указаны категории магазина. Вот так:


Всего в файле 3000 категорий магазина и около 2000 категорий поставщика.

Нужно категории из столбца В посортировать и поставить напротив категорий из столбца А, где название последней категории в цепочке совпадает. Некоторые названия последней категории совпадают на 100% (отмечены красным). Некоторые названия по буквам совпадают на 80-90% (отмечены синим).

Категории в столбце А - должны остаться на месте, а напротив них, в столбце С должны подставиться совпадающие категории из столбца В. Вот так:


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

Заранее благодарен за помощь.
 
запрос для 100% совпадений
Код
let
    Source = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content],
    Index = Table.AddIndexColumn(Source, "Индекс", 0, 1),
    Inserted = Table.AddColumn(Index, "Пос", each Text.AfterDelimiter([Категории поставщика], ">", {0, RelativePosition.FromEnd}), type text),
    Inserted2 = Table.AddColumn(Inserted, "Маг", each Text.AfterDelimiter([Категории магазина], ">", {0, RelativePosition.FromEnd}), type text),
    Trimmed = Table.TransformColumns(Inserted2,{{"Пос", Text.Trim, type text}, {"Маг", Text.Trim, type text}}),
    Merged = Table.NestedJoin(Trimmed,{"Пос"},Trimmed,{"Маг"},"Extracted2",JoinKind.LeftOuter),
    Expanded = Table.ExpandTableColumn(Merged, "Extracted2", {"Категории магазина"}, {"Результат"}),
    Sorted = Table.Sort(Expanded,{{"Индекс", Order.Ascending}}),
    Removed = Table.SelectColumns(Sorted,{"Категории поставщика", "Категории магазина", "Результат"})
in
    Removed
Изменено: artyrH - 07.09.2019 16:19:56
 
artyrH, огромное спасибо за помощь. Хоть на категории которые на 100% совпадают, не нужно будет тратить время...
Спасибо что откликнулись и помогли.
 
Доброе время суток.
Вариант с fuzzy join
 
Андрей VG, спасибо. Попробую остальные категории подобрать.
Страницы: 1
Наверх