如何使用Pandas DataReader从世界银行获取数据
在数据分析和经济研究中,获取可靠的数据源是至关重要的。世界银行提供了一个名为“世界发展指标”(World Development Indicators,简称WDI)的数据库,它包含了全球各国的经济、环境和社会数据。幸运的是,Python的Pandas库通过其pandas_datareader.wb
模块,为我们提供了一个方便的接口来下载这些数据。
世界银行数据读取器(WorldBankReader)
WorldBankReader
类是Pandas DataReader模块中用于从世界银行下载数据系列的工具。以下是它的一些关键参数和方法:
参数(Parameters)
symbols
:世界银行指标字符串或字符串列表,从WDIsearch()中的id字段获取。countries
:字符串或字符串列表。可以是所有国家的ISO国家代码,也可以是特定国家的代码(例如“US”,“CA”或“USA”,“CAN”)。start
:数据系列的起始年份,忽略月份和日期。end
:数据系列的结束年份(包括),忽略月份和日期。errors
:当国家代码验证失败时的响应方式,可以是’ignore’、‘warn’或’raise’。
方法(Methods)
close()
:关闭网络会话。get_countries()
:查询国家信息,如国家代码、地区、收入水平、首都城市、纬度和经度。get_indicators()
:下载所有世界银行数据系列的信息。read()
:读取数据。search()
:从世界银行搜索可用的数据系列。
辅助函数
download()
:从世界银行的WDI下载数据系列。get_countries()
:查询国家信息。get_indicators()
:下载所有世界银行数据系列的信息。search()
:搜索世界银行的可用数据系列。
使用示例
以下是如何使用WorldBankReader
来获取数据的一个简单示例:
import pandas_datareader.data as web
# 创建一个WorldBankReader实例
reader = web.WorldBankReader(indicator=['NY.GNS.ICTR.GN.ZS'], country='CN', start=2003, end=2005)
# 读取数据
data = reader.read()
print(data)
在这个例子中,我们创建了一个WorldBankReader
实例,指定了我们想要获取的指标(例如,国内生产总值GNI),国家(中国),以及数据的时间范围(2003年到2005年)。然后,我们调用read()
方法来获取数据,并打印出来。
注意事项
- 第一次运行
search()
函数时,它会下载并缓存完整的可用系列列表,这可能需要一些时间,取决于你的网络速度。后续的搜索将使用缓存的副本,因此应该会更快。 - 国家代码是从维基百科提供的ISO国家列表中硬编码到Pandas中的,截至2014年11月10日。
通过使用Pandas DataReader,我们可以轻松地将世界银行的丰富数据集成到我们的分析和研究中,从而为全球经济和社会问题提供数据支持。