JSONファイルをCSVファイルに変換する
こんにちは。梅雨明けしたいも関わらず、ジトジトして不快指数が高いお天気が続きますね。でも湿気に負けないで今日もブログを更新しようと思います!
さて、今日は以前書いた記事「Perlで横浜市の区別年齢別人口データを自動入手する」で入手したJSONファイルをCSVファイルに変換します。何故CSVにしたいかと言えば、その前に書いた記事「横浜市地図に区名を表示する」で紹介した横浜市地図に人口データを反映させるための情報に編集し直す必要があり、一旦CSVにした方が編集作業が便利そうだからです。
JSONファイルを読み込んで、CSVとして書き出す
横浜市の人口データが入っているJSONファイルを読み込み、2次元テーブルに変換して、CSVとしてファイル出力するスクリプトをPythonで書きました。汎用性のあるコードにしたかったのですが、結構手間取りそうだったので、今回扱うJSONファイルの構造に依存した処理になっています。
conv_json_to_csv.py
ここではCSVにするためにDictionary型のデータを2次元データに書き換えています。
L32の書き方は便利で、
[x[1] for x in row_list]
は、[(x0,y0),(x1,y1),(x2,y2),…]という形式のリストのうち、第二要素のみを取り出して
[y0,y1,y2,...]
と整理してくれます。=>stackoverflow
以上で、横浜市の0-5歳児の人口データが入ったCSVファイルが出来上がりました。
次は、以前の記事「区名と行政団体コードを書き並べたCSVからJSONファイルを作成する」で作成したCSVファイルと合わせてExcelで編集して次のようにまとめます。
これを、同じく「区名と行政団体コードを書き並べたCSVからJSONファイルを作成する」で書いたスクリプトを使って、JSONファイルに変換します。
これで、区名&人口データが入ったJSONファイルが出来上がりました。
次回はこのファイルを使って、横浜市地図を塗り分けようと思います!
それでは♪