联合国商品贸易数据库?wto数据库如何查数据
大家好,如果您还对联合国商品贸易数据库不太了解,没有关系,今天就由本站为大家分享联合国商品贸易数据库的知识,包括wto数据库如何查数据的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!
如何使用联合国贸易数据库中的数据
GTT(Global Trade Tracker)提供比联合国贸易数据库更详实的数据。Global Trade Tracker全球贸易追踪数据库,涵盖世界上80多个主要贸易国家的原始贸易统计数据,包括数量、单价、金额等。数据均来自每个国家(地区)的海关或国家官方统计机构。微信关注:中国化信竞争情报研究院,可留言咨询。
联合国贸易数据库怎么用
数据库是按照数据结构来组织、存储和管理数据的仓库,数据管理不再仅仅是存储和管理数据,而转变成用户所需要的各种数据管理的方式。数据库有很多种类型,从最简单的存储有各种数据的表格到能够进行海量数据存储的大型数据库系统都在各个方面得到了广泛的应用。在信息化社会,充分有效地管理和利用各类信息资源,是进行科学研究和决策管理的前提条件。数据库技术是管理信息系统、办公自动化系统、决策支持系统等各类信息系统的核心部分,是进行科学研究和决策管理的重要技术手段。数据库是一个单位或是一个应用领域的通用数据处理系统,它存储的是属于企业和事业部门、团体和个人的有关数据的集合。数据库中的数据是从全局观点出发建立的,按一定的数据模型进行组织、描述和存储。其结构基于数据间的自然联系,从而可提供一切必要的存取路径,且数据不再针对某一应用,而是面向全组织,具有整体的结构化特征。数据库中的数据是为众多用户所共享其信息而建立的,已经摆脱了具体程序的限制和制约。不同的用户可以按各自的用法使用数据库中的数据;多个用户可以同时共享数据库中的数据资源,即不同的用户可以同时存取数据库中的同一个数据。数据共享性不仅满足了各用户对信息内容的要求,同时也满足了各用户之间信息通信的要求。
wto数据库如何查数据
联合国商品贸易统计数据库(缩写UN Comtrade)由联合国统计署创建,是目前全球最大、最权威的国际商品贸易数据型资源库,每年超过200个国家和地区向联合国统计署提供其官方年度商品贸易数据,涵盖全球99%的商品交易,真实反映国际商品流动趋势。这是我们研究全球贸易活动最基础、最权威的数据库。下载页面如下:
但是每次都要手动操作一遍,就比较麻烦。不过UN Comtrade提供了可以更方便获得数据的接口,我们来尝试一下。接口的实现原理,大概相当于:我们把要查询的数据,编成一条信息,发给UN Comtrade,然后UN Comtrade返回一个包含数据的文件,我们再解码成我们想要的格式。
一、查看接口格式。
我们先去UN Comtrade的接口网页,来看一看接口格式。
上图就是UN Comtrade的接口中,所包含的参数及格式。具体为:
r:reporting area报告数据的国家,默认值0
px:classification商品代码体系,商品进出口的默认值是HS(即Harmonized System),也可以选ST(即Standard International Trade Classification),服务进出口的默认值是EB02
ps:time period时间区间,格式为YYYYYYYYMMnowrecent等几种格式,取决于周期是月还是年。now是获得最近1期数据(默认值),recent是获得最近5期数据
p:partner area发生贸易往来的经济体,默认值all
rg:trade regime/ trade flow贸易的方向,1代表进口,2代表出口,默认值all
cc:classification code商品分类代码,TOTAL代表全部,AG2代表两位代码(默认值)等
max:maximum records returned一次性返回的最大数据条数,默认值是500,普通访客最高是10万,认证用户最高是25万
type:trade data type贸易类型,C是商品(默认值),S是服务
freq:data set frequency数据频率,A是年(默认值),M是月
head:heading style数据抬头格式,H适合人阅读(默认值),M适合机器阅读
最近铁矿石价格高涨,引发市场关注,而中国铁矿石的主要进口来源地是澳大利亚,我们就来看看,过去5年中国自澳大利亚进口铁矿石的数据。
我们把相关参数录入后,点击左下角的Try it out!就会返回给我们一个地址,这个地址就是向UN Comtrade发送数据请求的信息。同样,我们可以基于这条信息的格式,来设计我们的Python接口函数。
https://comtrade.un.org/api/get?r=156&px=HS&ps=2015%2C2016%2C2017%2C2018%2C2019&p=36&rg=1&cc=2601&type=C&freq=A&head=H
我们把这条消息输入浏览器的地址栏,就可以看到返回的数据如下,里面的TradeValue就是我们想要的数据了:
二、调用requests库解析数据
UN Comtrade的接口以json格式交换数据,我们来看一看返回的数据格式。我们要用到Python的requests库。
import requests test= requests.get("http://comtrade.un.org/api/get", params=dict(r="156",px="HS",ps="2015,2016,2017,2018,2019",p="36",rg='1',cc='2601',type='C',freq="A")) test.json()
我们来看一下返回内容,json有点类似于双重字典,从下文可以看到,返回结果主要包括两大类,第一大类是validation,主要是过程信息,第二大类是dataset,主要是我们需要的数据。
{'validation':{'status':{'name':'Ok','value': 0,'category': 0,'description':'','helpUrl':'For more reference visit http://comtrade.un.org/data/dev/portal/'},'message': None,'count':{'value': 5,'started':'2020-12-15T02:52:46.3395337+01:00','finished':'2020-12-15T02:52:47.0901557+01:00','durationSeconds': 0.750622},'datasetTimer':{'started':'2020-12-15T02:52:46.3395337+01:00','finished':'2020-12-15T02:52:47.8896543+01:00','durationSeconds': 1.5501205999999998}},'dataset': [{'pfCode':'H5','yr': 2017,'period': 2017,'periodDesc':'2017','aggrLevel': 4,'IsLeaf': 0,'rgCode': 1,'rgDesc':'Import','rtCode': 156,'rtTitle':'China','rt3ISO':'CHN','ptCode': 36,'ptTitle':'Australia','pt3ISO':'AUS','ptCode2': None,'ptTitle2':'','pt3ISO2':'','cstCode':'','cstDesc':'','motCode':'','motDesc':'','cmdCode':'2601','cmdDescE':'Iron ores and concentrates; including roasted iron pyrites','qtCode': 8,'qtDesc':'Weight in kilograms','qtAltCode': None,'qtAltDesc':'','TradeQuantity': 668420584292,'AltQuantity': None,'NetWeight': 668420584292,'GrossWeight': None,'TradeValue': 46500341920,'CIFValue': None,'FOBValue': None,'estCode': 0},
三、使用Pandas库转换数据格式
我们选择我们关心的数据,用关键字提取出来,然后转换成DataFrame格式,就可以方便的查看数据了:
import pandas as pd import cufflinks as cf pd.DataFrame(test.json()['dataset'])[['yr','TradeValue']].iplot(x='yr',y='TradeValue',kind='bar',title='中国过去5年自澳大利亚进口铁矿石金额')
四、简单封装
我们把上文中的读取和解析数据的过程,简单封装成一个函数,以方便后续调用,比如我们想查看中国历年自澳大利亚进口铁矿石的金额,可以用如下命令:
import requests import pandas as pd import cufflinks as cf def comtrade_data(**params): r= requests.get("http://comtrade.un.org/api/get", params=params) return pd.DataFrame(r.json()['dataset']) Iron_ores= comtrade_data(r="156",px="HS",ps="ALL",p="36",rg='1',cc='2601',type='C',freq="A") Iron_ores[['yr','TradeValue']].iplot(x='yr',y='TradeValue',kind='bar',title='中国自澳大利亚进口铁矿石金额')
我们想看看中国的大豆自各国进口的情况,用
soybean= comtrade_data(r="156",px="HS",ps="2019",p="all",rg='1',cc='1201',type='C',freq="A") soybean= soybean.sort_values(by='TradeValue',ascending=False) soybean.iloc[1:6].iplot(x='ptTitle',y='TradeValue',kind='bar',title='2019年中国大豆进口额')
从上图可以看到,2019年中国自巴西的大豆进口,明显高于美国,那么这种情况,是否是受到中美贸易摩擦的影响呢?我们用如下命令,就可以很清晰的看到,2018年之前,中国自美国和巴西进口大豆的金额比较接近,但是2018年之后,中国自美进口大豆锐减,并从巴西替代,这也是中美贸易摩擦对美国影响的一个案例。
soybean_import= comtrade_data(r="156",px="HS",ps="all",p="76,842",rg='1',cc='1201',type='C',freq="A") soybean_import_usa= soybean_import[soybean_import['ptTitle']=='USA'].set_index('yr')[['TradeValue']] soybean_import_brazil= soybean_import[soybean_import['ptTitle']=='Brazil'].set_index('yr')[['TradeValue']] soybean_import_all= soybean_import_usa.join(soybean_import_brazil,lsuffix='_USA',rsuffix='_Brazil') soybean_import_all.iplot(kind='bar',title='中国自美国和巴西进口大豆金额',legend={'orientation':'h','x':0.1,'y':-0.1})
五、几个注意事项
1、如果是访客用户的话,ps、r、p三个参数最多只能填5个代码,最多只有一个参数可以使用all,cc最多可以填20个代码,可以使用all
2、查询国家的时候,只能录入国家编号,查询国家对应编号的地址是https://comtrade.un.org/Data/cache/reporterAreas.json
3、查询对手方国家的时候,只能录入国家编号,查询对手方国家对应编号的地址是https://comtrade.un.org/Data/cache/partnerAreas.json
4、查询相关商品对应的HS编码,地址是https://comtrade.un.org/Data/cache/classificationHS.json
OK,关于联合国商品贸易数据库和wto数据库如何查数据的内容到此结束了,希望对大家有所帮助。