こんにちは。さすをです。
以前、6,000万のPython案件に携わりました。
今回の記事は、Pythonのライブラリの一つであるpandasを使って、JSON形式のファイルを読み込む方法を紹介していきます。
それでは本文をどうぞ。

pandasを使ってJSONファイルを読み込みたいんだけど、どうすればいいの、、

その悩みを解決します!
pandasライブラリをまだインストールしていない方は、【これだけ知っておけばOKです】 現役エンジニアもよく使う便利なPythonライブラリ22選から、インストールしてください。
※0円のサンプルテキストという近道
独学よりプログラミングスクールの方が効果は出やすいですが、値段が高く、なかなか手を出しづらいですよね。techgymでは無料のサンプルテキストと解説動画をもらえるので、これを使ってお得にPythonの基礎を学ぶのもオススメです。
最短1分でできる!
1.pandasでJSON形式のファイルを読み込む方法

今回はsample.jsonというJSONデータを使用します。
sample.json:
{
"age": {
"satoshi": 40,
"sho": 38,
"jun": 37,
"masaki": 38,
"kazunari": 37
},
"color": {
"satoshi": "brue",
"sho": "red",
"jun": "purple",
"masaki": "green",
"kazunari": "yellow"
},
"hobby": {
"satoshi": "fishing",
"sho": "rap",
"jun": "smoothie",
"masaki": "animal",
"kazunari": "game"
}
}
pandasを使ってJSONを読み込むためのスクリプトはこちらです。
import pandas as pd
import json
json_file = open('blog_data/sample.json', 'r')
df = pd.read_json(json_file)
print(df)

処理内容を一つずつ説明していきます!
import pandas as pd
pandasを使うためには、pandasライブラリをインポートする必要があります。
「as pd」は、pandasとpdは同じ意味として使用するという宣言なので気にしなくて大丈夫です。
import json
JSON 関連の関数を使うためには、 json モジュールをインポートする必要があります。
JSONを扱うときに必要なおまじないだと思いましょう。
json_file = open('blog_data/sample.json', 'r')
この行では、JSONファイルのパスを指定し、読み込んでいます。
‘blog_data/sample.json’の部分にファイルパスを指定しましょう。
‘r’はreadの略で、ファイルを読み込むという意味で使用します。
df = pd.read_json(json_file)
pd.read_jsonを使って、JSONファイルをDataFrame(pandasの独自の構造)として読み込みます。
DataFrameは、異なる型のデータを入れることができるというメリットがあります。
print(df)
読み込んだJSONファイルを表示します。
スクリプトの実行結果はこちらです。
age color hobby
satoshi 40 brue fishing
sho 38 red rap
jun 37 purple smoothie
masaki 38 green animal
kazunari 37 yellow game

JSONファイルを読み込むことができました!
2.pandasで圧縮されたJSON形式のファイルを読み込む方法

圧縮されたJSON形式のファイルを読み込む場合は、引数にcompressionを追加すればOKです。
ファイル名にzip, gzip, bz2, xzを指定することで、圧縮ファイルを直接読み込むことができます。
また、拡張子が.zip, .gz, .bz2, .xzの場合はcompression=’infer’とすることで、圧縮方式が自動で選択されます。
import pandas as pd
import json
df_zip = pd.read_json('blog_data/sample.zip', compression='infer')
print(df_gzip)
3.pandasで改行で区切られているJSON形式のファイルを読み込む方法

改行で区切られているJSON形式のファイルは、JSON Lines(.jsonl)といいます。
JSON Linesの例:
{ "name": "satoshi", "age": 40, "color": "blue", "hobby": "fishing" }
{ "name": "sho", "age": 38, "color": "red", "hobby": "rap" }
{ "name": "jun", "age": 37, "color": "purple", "hobby": "smoothie" }
{ "name": "masaki", "age": 38, "color": "green", "hobby": "animal" }
{ "name": "kazunari", "age": 37, "color": "yellow", "hobby": "game" }
このようなファイルを読み込むためには引数にorient、linesを追加すればOKです。
import pandas as pd
import json
json_file = open('blog_data/sample.json', 'r')
df_jsonl = pd.read_json(json_file, orient='records', lines=True)
print(df_jsonl)
4.Pythonスキルを伸ばす方法とは?
4-1.独学編
Pythonスキルを独学で身に着けるためには、参考書が必須です。
おすすめのPython書籍を以下の記事で解説したので、参考にしていただけたらと思います。
本を買う前に、一度Pythonの学習をしてみたいという方は、Pythonを学べるおすすめ学習サイトを以下の記事で解説したので、こちらも参考にしてみてください。
>>【料金別&徹底解説】 Pythonおすすめ勉強サイト8選【楽しく学ぼう】
4-2.スクール編
お金がかかってもいいから、少しでも早くPythonスキルを身につけたい方は、TechAcademy(テックアカデミー)のPythonコースがおすすめです。
エンジニアになれば、受講料は1か月もあれば回収できるので、問題なしです。
本気でPythonスキルを身につけたい方は、スクールで一気にスキルを身に着けるのもありでしょう。
>>TechAcademy(テックアカデミー)のPythonコースはこちら
5.おわりに

6,000万のPython案件に携わった経験のある筆者が、Pythonのライブラリの一つであるpandasを使って、JSON形式のファイルを読み込む方法を紹介してきました。
Python開発においてjsonを読み込むことは非常に多いので、改めて確認しておきましょう!
この記事が少しでもあなたの役に立てていたらうれしいです。
頑張るあなたを応援しています!
それでは!
最短1分でできる!
あなたにおすすめの記事:
>>【無料】Pythonでできること9選【初心者でも稼げます】
>>【徹底解説】Pythonエンジニアに転職する方法【失敗しない方法を詳しく解説】
コメント