添加cutoff参数时,pandas csv输出有['']

时间:2018-04-20 15:47:45

标签: python pandas csv difflib

我成功为Pandas中的get_close_matches添加了一个截止选项。出于某种原因,当我添加cutoff = 0.7时,当它输出到我的CSV时,它显示为['Name']。当它没有cutoff参数时,它只输出没有['']的匹配。以下是我的代码。任何帮助将不胜感激!

https://pastebin.com/nRt3rVPr

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())

1 个答案:

答案 0 :(得分:0)

不指定引号。

df.to_csv(sys.argv[2], columns=header, quoting=csv.QUOTE_NONE)