加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
匹配相似客商名.py 1.68 KB
一键复制 编辑 原始数据 按行查看 历史
fengmingshan 提交于 2022-01-07 00:02 . 添加匹配相似客商名
# -*- coding: utf-8 -*-
"""
Created on Thu Jan 6 23:37:07 2022
@author: Administrator
"""
import pandas as pd
import numpy as np
import os
import Levenshtein
path = r'C:\Users\Administrator\Desktop\内部往来'
os.chdir(path)
df = pd.read_excel('内部往来最终.xls')
name_dict = {
'省水利水电公司本部':'云南省水利水电工程有限公司',
'三公司机关':'云南省水利水电工程有限公司第三公司',
'一公司机关':'云南省水利水电工程有限公司第一分公司',
'大理分公司机关':'云南省水利水电工程有限公司大理分公司',
'贵州分公司机关':'云南省水利水电工程有限公司贵州分公司',
'路桥分公司机关':'云南省水利水电工程有限公司路桥分公司',
'服务分公司机关':'云南省水利水电工程有限公司服务分公司',
}
df_source =pd.read_excel('内部往来最终.xls',names=['A', 'B', 'C', 'D', 'E'])
df_source = df_source[~(df_source['B'].isnull())]
df_source = df_source[~(df_source['A']=='主体帐簿累计')]
df_source = df_source[(df_source['D']=='借')|(df_source['D']=='贷')]
for key, value in name_dict.items():
df_source['B'] = df_source['B'].map(lambda x:x.replace(key, value))
df_source['C'] = df_source['C'].map(lambda x:x.replace(key, value))
项目辅助 = set(df_source['B'].unique())
客商 = set(df_source['C'].unique())
diff = 项目辅助 - 客商
res = []
for item in diff:
same = [Levenshtein.jaro(item,x) for x in 客商]
tmp_dict = {k:v for k,v in zip(客商,same)}
sorted_dict = sorted(tmp_dict.items(),key = lambda x:x[1],reverse = True)
res.append((item,sorted_dict[0][0]))
res_dict = {k:v for k,v in res}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化