我是一名刚开始学习Python的商科学生。我的教授让我对两个文件进行模糊匹配:美国专利信息和从证券交易所网站下载的公司信息。我的任务是比较美国专利文件中出现的公司名称(文件 1 的第 1 栏)和证券交易所网站上的公司名称(文件 2 的第 1 栏)。据我所知,(1)第一步是将列出的所有字母文件 1 和文件 2 更改为小写;(2) 从文件 2 中选择每个名称,并将其与文件 1 中的所有名称匹配,并返回 15 个最接近的匹配项。(3) 重复步骤 2,遍历所有名称为文件 2。 (4) 每一次匹配,都有一个相似度。我想我会使用 SequenceMatcher() 对象。我刚刚学习如何从我的 csv 文件中导入数据(我有 2 个文件),见下文
import csv
with open('USPTO.csv', 'rb') as csvfile:
data = csv.reader(csvfile, delimiter=',')
for row in data:
print "------------------"
print row
print "------------------"
for cell in row:
print cell
抱歉我的愚蠢问题,但我太新了,无法用我自己的数据替换字符串(“abcde”、“abcde”,如下所示)数据。我不知道如何将导入的数据更改为小写。而且我什至不知道如何设置 15 个最接近的匹配标准。我的教授告诉我这是一项容易的任务,但我真的感到很失败。感谢您的阅读!希望有人能给我一些指示。我没那么傻:)
>>> import difflib
>>> difflib.SequenceMatcher(None, 'abcde', 'abcde').ratio()
1.0