この記事では、Pythonのpandasライブラリを使用してDataFrameをJSONファイルとして出力する方法について詳しく解説します。具体的なコード例とその解説、さらには応用例を3つ以上掲載しています。
目次
基本的な使い方
DataFrameをJSON形式で保存する最も基本的な方法は`to_json`メソッドを使用することです。まず、DataFrameを作成してみましょう。
import pandas as pd
# データフレームの作成
df = pd.DataFrame({
'name': ['Alice', 'Bob', 'Charlie'],
'age': [25, 30, 35],
'city': ['Tokyo', 'Osaka', 'Nagoya']
})
# DataFrameの確認
print(df)
このDataFrameをJSONファイルとして出力する場合は、以下のように`to_json`メソッドを使用します。
# JSONファイルとして出力
df.to_json('data.json')
オプションを活用する
インデントを設定する
JSONファイルの見た目を整えたい場合は、`indent`オプションを使用してインデントを設定できます。
# インデントを設定してJSONファイルとして出力
df.to_json('data_pretty.json', indent=4)
日本語文字列をエスケープしない
日本語の文字列をエスケープしたくない場合は、`ensure_ascii=False`オプションを指定します。
# 日本語をエスケープしない
df.to_json('data_no_escape.json', ensure_ascii=False)
応用例
例1: オブジェクト内にリストや辞書を持つDataFrame
# 辞書とリストを要素とするDataFrame
df_complex = pd.DataFrame({
'info': [{'key': 'value'}, {'key2': 'value2'}],
'numbers': [[1, 2, 3], [4, 5, 6]]
})
# JSONファイルとして出力
df_complex.to_json('data_complex.json')
例2: 複数のDataFrameを一つのJSONファイルに保存
import json
# 複数のDataFrame
dfs = {'df1': df, 'df2': df_complex}
# それぞれをJSONに変換
json_dfs = {key: val.to_json() for key, val in dfs.items()}
# 一つのJSONファイルに保存
with open('multiple_dfs.json', 'w') as f:
json.dump(json_dfs, f)
例3: ファイルではなく文字列としてJSONを取得
# JSON文字列として取得
json_str = df.to_json()
# 確認
print(json_str)
まとめ
pandasの`to_json`メソッドを使用して、DataFrameをJSONファイルとして出力する方法は非常に多機能であり、多くのオプションが提供されています。この機能を使いこなすことで、より柔軟なデータ処理が可能になります。
コメント