如果在智利有一个comuna的名字,它会返回它的代码
clcomuna的Python项目详细描述
clcomuna
非常简单的包,给了一个comuna的名字 从智利返回其代码
说明
智利的每个comuna都有一个独特的代码,可以更容易地将它们映射到 不同的属性(例如choropleth)。因为我正在经历这些麻烦 每次我有一个新项目的时候,我都会做一个非常简单的 自动化任务的工具。我希望这对其他人有用 开发者/公民黑客。
我添加了一个模糊版本,用于没有完全匹配的情况。
功能
- 给定一个comuna名称,它将返回其代码,并处理特殊字符、大写和小写。
- 如果找不到完全匹配的项,则打印该项并返回“无”
- 模糊函数返回最佳匹配(使用fuzzywuzzy)
- 您可以指定打印模糊匹配的分数
- 您可以指定一个阈值,在该阈值之上,它应返回匹配项,在该阈值之下,它不应返回匹配项。
- 有一个函数尝试精确匹配,如果找不到,则转到模糊版本。
- comunas代码列表是一个简单的csv文件,便于编辑。
- 如果您想在csv文件中添加一些comuna名称版本,请与我联系,我将立即添加它们。
安装
pip3 install clcomuna
要求
- 模糊模糊
- Python3.3+
用法:
>>> import clcomuna
(如果有警告,忽略它。它带有依赖性)
get_代码
>>> clcomuna.get_code("peumo") '06112'
get_fuzzy:返回名称,而不是代码
>>> clcomuna.get_fuzzy("alragobo") 'ALGARROBO' >>> clcomuna.get_fuzzy("alragobo", True) ('ALGARROBO', 71) 'ALGARROBO' >>> clcomuna.get_fuzzy("alragobo", True, 72) ('ALGARROBO', 71) Score lower than minimum threshold for comuna: ALRAGOBO - ALGARROBO
可选的第二个参数true打印找到的comuna和分数。 可选的第三个参数int为函数设置了一个阈值 返回最佳名称匹配项
get_步骤
>>> clcomuna.get_steps("alragobo") Could not find code for: ALRAGOBO 'ALGARROBO' >>> clcomuna.get_steps("alragobo", False, 74) Score lower than minimum threshold for comuna: ALRAGOBO - ALGARROBO