我成功为Pandas中的get_close_matches添加了一个截止选项。出于某种原因,当我添加cutoff = 0.7时,当它输出到我的CSV时,它显示为['Name']。当它没有cutoff参数时,它只输出没有['']的匹配。以下是我的代码。任何帮助将不胜感激!
import sys
import difflib
import csv
import pandas as pd
df = pd.read_csv(sys.argv[1])
List = df.list #.astype(str).values.tolist()
MappedID = df.Party.astype(str)
df['Name_r'] = MappedID.map(lambda x: (difflib.get_close_matches(x, List, cutoff=0.7)[:1] or [None][0]))
header = [ "List", "Party", "Name_r"]
df.to_csv(sys.argv[2], columns = header)
print(df.to_string())
答案 0 :(得分:0)
不指定引号。
df.to_csv(sys.argv[2], columns=header, quoting=csv.QUOTE_NONE)