1
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

総務省APIを使ってデータを取得する

Last updated at Posted at 2020-11-16

総務省APIを使用してデータを取得

計量経済学のパネルデータを作成するためにPythonでデータをとってみました。(備忘録です)

準備

Python実行環境
総務省APIの取得
こちらからユーザ登録して取得できます。

## コード

def_TakeData
import requests,urllib
import pandas as pd
import numpy as np
import json
def get_json(base_url,params):
    params_str=urllib.parse.urlencode(params)
    url=base_url+params_str
    json=requests.get(url).json()
    return json

def take_data(dataid):
    appID="appIDを入れます"
    base_url="http://api.e-stat.go.jp/rest/2.1/app/json/getStatsData?"
    params={
        "appId":appID,
        "lang":"J",
        "statsDataId":dataid,
        "metaGetFlg":"Y",
        "cntGetFlg":"N",
        "sectionHeaderFlg":"1"
    }

    data=get_json(base_url,params)
    return data
take
data=take_data(XXXXX)

json形式のデータが変換されます
urlは
http://api.e-stat.go.jp/rest/2.1/app/getStatsData?appId=&lang=J&statsDataId=(ここにデータIDを入れる)&metaGetFlg=Y&cntGetFlg=N&sectionHeaderFlg=1
上記の形式です。
総務省サイトから簡単にAPIリクエストURLを参照できます。

json->DataFrame

df=pd.DataFrame(data['GET_STATS_DATA']['STATISTICAL_DATA']['DATA_INF']['VALUE'])
#jsonデータをpandasDataFrameに変換(例)

欲しいデータをDataFrameに格納します。

-`data['GET_STATS_DATA']['STATISTICAL_DATA']['CLASS_INF']['CLASS_OBJ']`

上記のコードでjsonにどのようなデータが入っているの確認できます。

これで操作しやすいDataFrameになりました

最後に

TwitterAPIとかよりは使いやすかったのでもっと詳しくかけるように頑張ります

Python初学者ですので間違いあれば指摘お願いいたします

1
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?