PythonとpandasでDataFrameをJSONファイルに出力する詳細ガイド

この記事では、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ファイルとして出力する方法は非常に多機能であり、多くのオプションが提供されています。この機能を使いこなすことで、より柔軟なデータ処理が可能になります。

コメント

コメントする

目次