🗂
米国CPIデータを取得するPythonのコード
この記事について
FREDから米国CPIデータをPythonで取得します。
Wikipadeaによると、アメリカ合衆国では、人口の約90%を対象とする全都市消費者物価指数(CPI-U:CPI for All Urban Consumers)がCPIとして一般的に使用されています。アメリカ労働統計局(US Bureau of Labor Statistics)が発表しています。データはここから探せます。APIも提供されています。getAPIは、はじめに登録が必要です。
FREDのほうが手軽にデータを取得できます。
Pythonのコード
pandas_datareaderを使います。
なお、FREDのAPIを使う場合はfredapiというライブラリもあります。
import datetime
import pandas_datareader.data as web
start = datetime.datetime(1950, 1, 1)
end = datetime.datetime(2022, 10, 31)
(季節調整前)CPIを取得します。
cpi = web.DataReader('CPIAUCNS', 'fred', start, end)
cpi
季節調整済CPIを取得します。
cpi = web.DataReader('CPIAUCSL', 'fred', start, end)
cpi
ちなみにアメリカ労働統計局のpostAPIでデータ取得するコードは以下です。
import requests
import json
headers = {'Content-type': 'application/json'}
data = json.dumps({"seriesid": ['CUSR0000SA0'],"startyear":"2011", "endyear":"2014"})
p = requests.post('https://api.bls.gov/publicAPI/v2/timeseries/data/', data=data, headers=headers)
json_data = json.loads(p.text)
df = pd.DataFrame(json_data['Results']['series'][0]['data'])
Plotlyで可視化
import plotly
import plotly.express as px
cpi = cpi.reset_index()
px.line(cpi,
x="DATE",
y="CPIAUCNS"
)
Discussion