我有一個(gè) excel 文件,其中一列包含 1000 多個(gè)公司名稱,另一列包含大約 20,000 個(gè)公司名稱。目標(biāo)是匹配盡可能多的名稱。問題是第一列(1000+)中的名稱格式不正確,這意味著“公司名稱”字符串可能類似于“9Com(panynAm9e00”。我正在嘗試找出解決此問題的最佳方法。(僅12 個(gè)名字完全匹配)在嘗試了不同的方法后,我最終嘗試使用正則表達(dá)式匹配每個(gè)名稱中的 4-5 個(gè)或更多字符,具體取決于每個(gè)字符串的長(zhǎng)度。但我只是在努力尋找最有效的方法來做到這一點(diǎn)。例如:第 1 欄 1. 9Com(panynAm9e00 2. NikE4 3. Mitrosof2第 2 欄 1. Microsoft 2. Company Name 3. Nike取第1 列中的第一個(gè)元素并在第 2 列中查找匹配項(xiàng)。如果沒有完全匹配,則查找具有 4-5 個(gè)相同字符的字符串。有什么建議么?
2 回答

SMILET
TA貢獻(xiàn)1796條經(jīng)驗(yàn) 獲得超4個(gè)贊
我想數(shù)字在實(shí)際公司名稱中并不是很常見,因此初始過濾步驟將極大地幫助前進(jìn),但這里有一個(gè)實(shí)現(xiàn),即使沒有這個(gè)也應(yīng)該可以相對(duì)良好地工作。一個(gè)信袋(bag-of-words)方法,如果你愿意:
將所有內(nèi)容(第 1 列和第 2 列)轉(zhuǎn)換為小寫
對(duì)于第 2 列中的每個(gè)已知公司,存儲(chǔ)每個(gè)唯一字母以及它在字典中出現(xiàn)的次數(shù)(計(jì)數(shù))
對(duì)第 1 列中的每個(gè)條目執(zhí)行相同操作(步驟 2)
對(duì)于第 1 列中的每個(gè)條目,從真實(shí)公司名稱列表中找到最接近的信袋(步驟 2 中的字典)
字典距離的實(shí)現(xiàn)取決于你。
添加回答
舉報(bào)
0/150
提交
取消