Вложенная итерация Scala в RDD - PullRequest
0 голосов
/ 12 сентября 2018

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

ID,FN,LN,Phone
-----------
1,James,Butt,872-232-1212
2,Josephine,Darakjy, 872-232-1213
3,Art,Venere,872-232-1214
4,Lenna,Paprocki,872-232-1215
5,Donette, Foller,872-232-1216
6,Jmes,Butt,666-232-1212
7,Donette, Foller,888-232-1216
8,Josphne,Darkjy, 555-232-1213

Внутри цикла я возьму FN, то есть «Джеймс», и посмотрю, есть ли у меня похожее имя в полном наборе данных с использованием каких-либо расстояний между строками (например, Левенштейна) и в этомЕсли у меня есть совпадение с идентификатором № 6: «Jmes», я создам корзину, добавив новый столбец GUID:

ID,FN,LN,Phone,GrupId
----------------------
1,James,Butt,872-232-1212,G1
2,Josephine,Darakjy, 872-232-1213,G2
3,Art,Venere,872-232-1214,G3
4,Lenna,Paprocki,872-232-1215,G4
5,Donette, Foller,872-232-1216,G5
6,Jmes,Butt,666-232-1212,G1
7,Donette, Foller,888-232-1216,G5
8,Josphne,Darkjy, 555-232-1213,G2

Я должен выполнить одну и ту же операцию с несколькими столбцами, такими как LN, Phone asЧто ж.Представьте, если у меня есть 1 миллион записей.

Будем благодарны за любые мысли, предложения или ссылки.Спасибо!

1 Ответ

0 голосов
/ 12 сентября 2018

Я бы определенно не пробовал ничего попарно, а скорее подумал бы о кодировании индекса Левенштейна-y для каждого поля и накапливал бы результаты на лету. Я бы, наверное, начал с дерева суффиксов - иного. Постараюсь набросать прототип, как только доберусь до ноутбука ...


Обновление: после некоторого прочтения я склоняюсь к аффинной кластеризации 1 в сочетании с попарно (да, я знаю) Левенштейн кэшировал в Trie 2 . Код в процессе ...

...