country-converter官方文档----机翻人工确认

2024-02-13 18:48

本文主要是介绍country-converter官方文档----机翻人工确认,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

项目描述

国家转换器 (coco) 是一个 Python 包,可在不同的分类和不同的命名版本之间转换和匹配国家名称。在内部,它使用常规的表达方式来匹配国家名称。可可还可用于在不同的分类方案之间构建聚合和谐矩阵。

内容表

  • 动机
  • 安装
  • 用法
    • 基本使用
      • 在 Python 内使用
      • 在命令行中使用
      • 在Matlab中使用
    • 为国家聚合构建和谐
  • 分类方案
  • 数据源和进一步阅读
  • 沟通、问题、错误和增强功能
  • 贡献
  • 相关软件
  • 引用国家转换器
  • 确认

作用

迄今为止,在(元)数据描述中,没有关于如何命名或指定个别国家单一标准。虽然某些数据源遵循 ISO 3166,但此标准除数字分类外,还定义了 2 个字母和 3 个字母的代码。使问题更加复杂的是,许多数据库没有使用现有标准之一,而是使用不合标准的国家名称对国家进行分类。

国家转换器(可可)自动转换从不同的标准和版本的国家名称。在内部,Coco 基于一张表格,其中指定了每个国家/地区不同的 ISO 和 UN 标准,以及官方名称和常规表达方式,旨在匹配特定国家名称的所有英文版本。此外,可可还包括基于联合国、欧盟、经合组织成员国、联合国区域规格、大陆以及各种MRIO和IAM数据库的分类(见下文的分类方案)。

安装

Country_converter在 Pypi 注册。从命令行:

pip install country_converter --upgrade

国家转换器也可以从conda,可以安装使用conda(如果你没有conda_forge通道添加到您的康达配置添加"-cconda",请参阅此处的安装说明):

conda install country_converter

或者,源代码可在GitHub上找到。

包裹取决于pandas库:测试测试是必需的。有关运行测试的更多信息,请参阅贡献.rst。

用法

基本使用

在 Python 内使用

将各种国名转换为某些标准名称:

import country_converter as coco
some_names = ['United Rep. of Tanzania', 'DE', 'Cape Verde', '788', 'Burma', 'COG','Iran (Islamic Republic of)', 'Korea, Republic of',"Dem. People's Rep. of Korea"]
standard_names = coco.convert(names=some_names, to='name_short')
print(standard_names)

这导致[坦桑尼亚’,德国’,‘佛得角’,‘突尼斯’,‘缅甸’,‘刚果共和国’,‘伊朗’,‘韩国’,‘朝鲜’。输入格式根据 ISO 二个字母、ISO 三个字母、ISO 数字或常规表达匹配自动确定。如果有任何模糊性,可以用参数"src"指定源格式。

在多次转换的情况下,可以通过为所有转换对单个国家转换对象进行实例化来实现更好的性能:

import country_converter as coco
cc = coco.CountryConverter()some_names = ['United Rep. of Tanzania', 'Cape Verde', 'Burma','Iran (Islamic Republic of)', 'Korea, Republic of',"Dem. People's Rep. of Korea"]standard_names = cc.convert(names = some_names, to = 'name_short')
UNmembership = cc.convert(names = some_names, to = 'UNmember')
print(standard_names)
print(UNmembership)

分类方案之间的转换:

iso3_codes = ['USA', 'VUT', 'TKL', 'AUT', 'XXX' ]
iso2_codes = coco.convert(names=iso3_codes, to='ISO2')
print(iso2_codes)

这导致 [美国’, ‘Vu’, ‘Tk’, ‘AT’, ‘找不到’

未找到的指示可以指定(例如,not_found = “不存在”),如果"not_found"未通过,则原始条目将通过:

iso2_codes = coco.convert(names=iso3_codes, to='ISO2', not_found=None)
print(iso2_codes)

结果在 [‘美国’, ‘VU’, ‘Tk’, ‘AT’, ‘XX’

内部数据存储在pandas数据帧中,可直接访问。例如,这可用于筛选成员国组织的国家(每年)。注意:为此,需要一个"国家转换器"实例。

import country_converter as coco
cc = coco.CountryConverter()some_countries = ['Australia', 'Belgium', 'Brazil', 'Bulgaria', 'Cyprus', 'Czech Republic','Denmark', 'Estonia', 'Finland', 'France', 'Germany', 'Greece', 'Hungary','India', 'Indonesia', 'Ireland', 'Italy', 'Japan', 'Latvia', 'Lithuania','Luxembourg', 'Malta', 'Romania', 'Russia', 'Turkey', 'United Kingdom','United States']oecd_since_1995 = cc.data[(cc.data.OECD >= 1995) & cc.data.name_short.isin(some_countries)].name_short
eu_until_1980 = cc.data[(cc.data.EU <= 1980) & cc.data.name_short.isin(some_countries)].name_short
print(oecd_since_1995)
print(eu_until_1980)

所有分类均可通过:

cc.EU28
cc.OECDcc.EU27as('ISO3')

以及可用的分类方案:

cc.valid_class

还有一个甲型腺,只得到国家分类(因此省略了任何国家集团):

cc.valid_country_classifications

如果您更需要一本描述分类/会员使用的字典:

import country_converter as coco
cc = coco.CountryConverter()
cc.get_correspondence_dict('EXIO3', 'ISO3')

还包括未在特定分类使用中分配的国家:

cc.get_correspondence_dict('EU27', 'ISO2', replace_nan='NonEU')

常规表达式还可用于将任何国家列表与任何其他国家列表匹配。例如:

match_these = ['norway', 'united_states', 'china', 'taiwan']
master_list = ['USA', 'The Swedish Kingdom', 'Norway is a Kingdom too','Peoples Republic of China', 'Republic of China' ]matching_dict = coco.match(match_these, master_list)

默认情况下,如果找不到匹配项,则国家转换器会向巨蛇记录记录器发出警告。以下示例演示了如何配置可可伐木行为。

import logging
import country_converter as coco
logging.basicConfig(level=logging.INFO)
coco.convert("asdf")
# WARNING:country_converter.country_converter:asdf not found in regex
# Out: 'not found'coco_logger = coco.logging.getLogger()
coco_logger.setLevel(logging.CRITICAL)
coco.convert("asdf")
# Out: 'not found'

有关更多信息,请参阅 IPython 笔记本(country_converter_examples.ipynb)。

命令线使用

国家转换器包还提供了一个称为 coco 的指挥线接口。

最小示例:

coco Cyprus DE Denmark Estonia 4 'United Kingdom' AUT

根据将输入与 ISO2、ISO3、ISonumeric 或常规表达匹配匹配的输入,将给定名称转换为 ISO3 代码。名称列表必须按空格划分,由多个单词组成的国名必须放在引号中(’)。

输入分类可以用"src"或"-s"(或将自动确定)、目标分类(“到"或”-t")来指定。

默认输出是一个空间分离列表,可以通过"+output_sep"或"-o"(例如 -o"|")通过分离器来更改。

因此,要从 ISO3 转换为 UN 编号代码,并接收输出作为逗号分离列表使用:

coco AUT DEU VAT AUS -s ISO3 -t UNcode -o ', '

命令线工具还允许指定未找到条目的输出,包括通过"无"将其传递到输出:

coco CAN Peru US Mexico Venezuela UK Arendelle --not_found=None

并指定一个额外的数据文件,这将覆盖现有的国家匹配

coco Congo --additional_data path/to/datafile.csv

请参阅 https://github.com/konstantinstadler/country_converter/tree/master/tests/custom_data_example.txt,了解其他数据文件示例。

旗帜UNmember_only(-u)和include_obsolete(-i)仅将搜索限制在联合国会员国,或将其扩展到还包括目前过时的国家。例如,荷属安的列斯群岛于2010年解散。

因此:

coco "Netherlands Antilles"

导致"未找到"。但是,搜索范围可扩展到最近解散的国家::

coco "Netherlands Antilles" -i

这导致了 “蚂蚁” 。

除这些国家外,可可指挥线工具还接受各种国家分类(EXIO1、EXIO2、EXIO3、WIOD、Eora、MESSAGE、OECD、EU27、EU28、UN、过时、塞西莉亚2050、金砖四国、APEC、基础、独联体、G7、G20)。其中之一可以通过

coco G20

列出该分类中的所有国家/

对于几乎涵盖所有国家的分类(MRIO 和 IAM 分类)

coco EXIO3

列出唯一的分类名称。在传递参数时,打印所选分类的简化函件:

coco EXIO3 --to ISO3

欲了解更多信息,请致电

coco -h
在Matlab中使用

较新的(在 2016 年测试)版本的 Matlab 允许直接调用 Python 功能和库。这需要安装在系统路径(例如通过 Anaconda)中的 Python 版本>= 3.4)。

要进行测试,请在 Matlab 中试用此:

py.print(py.sys.version)

如果这有效,您也可以在通过点(在窗口命令线)安装后使用 coco - 请参阅上面的安装说明):

pip install country_converter --upgrade

在 matlab 中:

coco = py.country_converter.CountryConverter()
countries = {'The Swedish Kingdom', 'Norway is a Kingdom too', 'Peoples Republic of China', 'Republic of China'};
ISO2_pythontype = coco.convert(countries, pyargs('to', 'ISO2'));
ISO2_cellarray = cellfun(@char,cell(ISO2_pythontype),'UniformOutput',false);

或者,作为一个长单线:

short_names = cellfun(@char, cell(py.country_converter.convert({56, 276}, pyargs('src', 'UNcode', 'to', 'name_short'))), 'UniformOutput',false);

如上所述,可可的所有属性也可在Matlab提供:

coco = py.country_converter.CountryConverter();
coco.EU27
EU27ISO3 = coco.EU27as('ISO3');

这些功能返回pandas数据帧。基础值可以访问与 。值 (例如.

EU27ISO3.values

我留给专业的 Matlab 用户来找出如何进一步处理它们。

另请参阅 IPython 笔记本(country_converter_examples.ipynb)以获取更多信息 - Python 中提供的所有功能(例如,通过附加数据文件,指定在数据丢失的情况下的输出)也在 Matlab 中工作,通过 pyargs 功能传递参数。

为国家聚合构建和谐

Coco 提供在不同分类之间构建和谐载体、矩阵和字典的功能。这可以用于巨蛇以及垫板。有关更多信息,请参阅(country_converter_aggregation_helper.ipynb)

分类方案

目前有以下分类方案(另请参阅下面的数据源以获取更多信息):

  1. ISO2 (ISO 3166-1 阿尔法-2)
  2. ISO3 (ISO 3166-1 阿尔法-3)
  3. ISO - 数字(ISO 3166-1 数字)
  4. 联合国数字代码(M.49 - 跟随大扩展ISO数字)
  5. 标准名称或短名称
  6. "官方"名称
  7. 大陆
  8. 联合国地区
  9. EXIOBASE 1 分类
  10. EXIOBASE 2 分类
  11. EXIOBASE 3 分类
  12. WIOD分类
  13. 欧拉
  14. 经合组织成员(每年)
  15. 消息11 区域分类
  16. 图像
  17. 提醒
  18. 联合国会员国(每年)
  19. 欧盟成员(包括欧盟12国、欧盟15国、欧盟25国、欧盟27国、EU27_2007国、欧盟28国)
  20. 欧洲经济区成员
  21. 申根区
  22. [塞西莉亚](https://cecilia2050.eu/system/files/De Koning et al. (2014)_Scenarios for 2050_0.pdf)2050 分类
  23. 亚太经合组织
  24. 金砖四国
  25. 基本
  26. 独联体(截至2019年,土库曼斯坦除外)
  27. G7
  28. G20(将所有欧盟成员国列为个别成员国)
  29. 粮农组织代码(数字)
  30. GBD 代码(数字 - 全球疾病负担国家代码)

Coco 包含官方认可的代码以及争议或解散国家的非标准代码。将设置限制为只有官方承认的联合国会员国或包括过时的国家,请通过

import country_converter as coco
cc = coco.CountryConverter()
cc_UN = coco.CountryConverter(only_UNmember=True)
cc_all = coco.CountryConverter(include_obsolete=True)cc.convert(['PSE', 'XKX', 'EAZ', 'FRA'], to='name_short')
cc_UN.convert(['PSE', 'XKX', 'EAZ', 'FRA'], to='name_short')
cc_all.convert(['PSE', 'XKX', 'EAZ', 'FRA'], to='name_short')

cc 导致 [巴勒斯坦’, ‘科索沃’, ‘找不到’, ‘法国’, 而cc_UN转换为 [未找到’, ‘未找到’, ‘未找到’, '法国]和cc_all转换为 [‘巴勒斯坦’, ‘科索沃’, ‘桑给巴尔’, ‘法国’] 请注意, 基础数据帧可在属性.数据 (例如cc_all. 数据) 。

数据源和进一步阅读

大多数基础数据都可以在维基百科中找到,描述ISO 3166-1的页面是一个很好的起点。联合国区域/代码在联合国统计司(未统计)网页上提供。在维基百科上也解释了ISO数字代码和UN(M.49)代码之间的差异。从各自的数据库中提取了EXIOBASE、WIOD和Eora分类。 对于Eora,这些名称基于网页上提供的"国家名称"csv 文件,但更新了 Eora26 数据库中使用的不同名称。消息分类遵循消息模型区域描述中给出的 11 个区域聚合。IMAGE分类基于"区域分类地图",以便提醒我们从模型开发人员处收到国家地图。

经合组织和联合国的成员可以在成员组织的网页上找到,关于过时的国家代码的信息在Statoids网页上。

由于英国脱欧进程,欧盟的形势变得复杂起来。在命名上,可可遵循欧盟统计局的词汇表,因此欧盟27指没有英国的欧盟,而EU27_2007指的是没有克罗地亚的欧盟(2007年扩大后的地位)。欧盟的捷径总是与最近的分类联系起来。欧洲经济区协议仍然适用于英国(2020年9月,英国脱欧过渡期-如这里所述),因此英国目前被纳入欧洲经济区。

全球疾病负担国家代码是从此处可用的 GBD 代码簿中提取的。

沟通、问题、错误和增强功能

请使用问题跟踪器记录错误,建议增强功能以及与 coco 相关的所有其他通信。

你可以在推特上关注我, 了解我所有的开源和研究项目的最新消息 (偶尔还有一些随机转推) 。

相关软件

一揽子计划为国家提供历史国家、国家细分、语言和货币的ISO官方数据库。如果您需要转换非英语国名,则国名包括一个以不同语言和功能转换为不同 ISO 3166 标准的国名的广泛数据库。Python-iso3166专注于 ISO 3166 标准中定义的两个字母、三个字母和三位数代码之间的转换。

如果您正在使用 R,则应该查看国家代码。

这篇关于country-converter官方文档----机翻人工确认的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/706340

相关文章

活用c4d官方开发文档查询代码

当你问AI助手比如豆包,如何用python禁止掉xpresso标签时候,它会提示到 这时候要用到两个东西。https://developers.maxon.net/论坛搜索和开发文档 比如这里我就在官方找到正确的id描述 然后我就把参数标签换过来

计算机毕业设计 大学志愿填报系统 Java+SpringBoot+Vue 前后端分离 文档报告 代码讲解 安装调试

🍊作者:计算机编程-吉哥 🍊简介:专业从事JavaWeb程序开发,微信小程序开发,定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事,生活就是快乐的。 🍊心愿:点赞 👍 收藏 ⭐评论 📝 🍅 文末获取源码联系 👇🏻 精彩专栏推荐订阅 👇🏻 不然下次找不到哟~Java毕业设计项目~热门选题推荐《1000套》 目录 1.技术选型 2.开发工具 3.功能

Adblock Plus官方规则Easylist China说明与反馈贴(2015.12.15)

-------------------------------特别说明--------------------------------------- 视频广告问题:因Adblock Plus的局限,存在以下现象,优酷、搜狐、17173黑屏并倒数;乐视、爱奇艺播放广告。因为这些视频网站的Flash播放器被植入了检测代码,而Adblock Plus无法修改播放器。 如需同时使用ads

Python脚本:TXT文档行数统计

count = 0 #计数变量file_dirs = input('请输入您要统计的文件根路径:')filename = open(file_dirs,'r') #以只读方式打开文件file_contents = filename.read() #读取文档内容到file_contentsfor file_content in file_contents:

bcolz文档

原文:http://bcolz.blosc.org/en/latest/reference.html First level variables bcolz.__version__'''bcolz包的版本。''' bcolz.dask_here'''是否检测到dask的最低版本。''' bcolz.min_dask_version'''需要dask的最低版本(dask是可选

WordPress开发中常用的工具或api文档

http://php.net/ http://httpd.apache.org/ https://wordpress.org/ https://cn.wordpress.org/ https://core.svn.wordpress.org/ zh-cn:开发者文档: https://codex.wordpress.org/zh-cn:%E5%BC%80%E5%8F%91%E8%80%

Temu官方宣导务必将所有的点位材料进行检测-RSL资质检测

关于饰品类产品合规问题宣导: 产品法规RSL要求 RSL测试是根据REACH法规及附录17的要求进行测试。REACH法规是欧洲一项重要的法规,其中包含许多对化学物质进行限制的规定和高度关注物质。 为了确保珠宝首饰的安全性,欧盟REACH法规规定,珠宝首饰上架各大电商平台前必须进行RSLReport(欧盟禁限用化学物质检测报告)资质认证,以确保产品不含对人体有害的化学物质。 RSL-铅,

Python知识点:使用Python进行PDF文档处理

使用 Python 进行 PDF 文档处理可以通过多种库来实现,包括 PyPDF2、pdfplumber、reportlab、pdfminer 等。这些库可以处理不同的 PDF 任务,例如 提取文本、拆分合并 PDF、修改 PDF、生成 PDF 等。以下是几种常见操作及对应的库和代码示例。 1. 安装常用库 首先,安装常用的 PDF 处理库: pip install PyPDF2 pdfpl

【2025】基于Python的空气质量综合分析系统的设计与实现(源码+文档+调试+答疑)

博主介绍:     ✌我是阿龙,一名专注于Java技术领域的程序员,全网拥有10W+粉丝。作为CSDN特邀作者、博客专家、新星计划导师,我在计算机毕业设计开发方面积累了丰富的经验。同时,我也是掘金、华为云、阿里云、InfoQ等平台的优质作者。通过长期分享和实战指导,我致力于帮助更多学生完成毕业项目和技术提升。 技术范围:     我熟悉的技术领域涵盖SpringBoot、Vue、SSM、HLMT

自动化表格处理的革命:智能文档系统技术解析

在当今数据驱动的商业环境中,表格数据的自动化处理成为了企业提高效率、降低成本的关键。企业智能文档系统在智能表格识别方面展现出卓越的性能,通过精准识别和处理各种通用表格,显著提升了企业文档管理的智能化水平。本文将深入探讨该系统在表格识别方面的关键技术和应用优势,以及如何通过行业定制化服务满足不同行业的需求。 1. 通用表格识别 智能文档系统通过先进的OCR技术和表格结构识别算法,能够精准