怎么在联合国统计司上查询各国近年的GDP

怎么在联合国统计司上查询各国近年的GDP,第1张

在iPhone13版本iOS12.3浏览器中打开网址搜索国际货币基金组织的网去查看年报找到。

GDP(国内生产总值),是一个国家(或地区)所有常住单位在一定时期内生产活动的最终成果。GDP是国民经济核算的核心指标,也是衡量一个国家或地区经济状况和发展水平的重要指标。

含义

GDP是按市场价格计算的一个国家(或地区)所有常住单位在一定时期内生产活动的最终成果。国内生产总值有三种表现形态,即价值形态、收入形态和产品形态。

从价值形态看,它是所有常住单位在一定时期内生产的全部货物和服务价值超过同期投入的全部非固定资产货物和服务价值的差额,即所有常住单位的增加值之和;从收入形态看,它是所有常住单位在一定时期内创造并分配给常住单位和非常住单位的初次收入之和;从产品形态看,它是所有常住单位在一定时期内所出产的最终使用的货物和服务价值减去货物和服务进口价值。在实际核算中,国内生产总值有三种计算方法,即生产法、收入法和支出法。

三种方法分别从不同方面反映国内生产总值及其构成,理论上计算结果相同。

拓展资料:

主要特征

局限性

(1)由于GDP用市场价格来评价物品与劳务,它就没有把几乎所有在市场之外进行的活动的价值包括进来。特别是,GDP漏掉了在家庭中生产的物品与劳务的价值。

(2)GDP没有包括环境质量。设想政府废除了所有环境管制,那么企业就可以不考虑他们所引起的污染而生产物品与劳务。在这种情况下,GDP会增加,但福利很可能会下降。空气和水质量的恶化要大于更多生产所带来的福利利益。

(3)GDP也没有涉及收入与分配。人均GDP告诉我们平均每个人的情况,但平均量的背后是个人收入的巨大差异。

由此可见,就大多数情况,但不是对所有情况而言,GDP是衡量经济福利的一个好指标。

联合国商品贸易统计数据库(缩写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 时间区间,格式为 YYYY YYYYMM now recent等几种格式,取决于周期是月还是年。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 concentratesincluding 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


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9653932.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存