Pandas での JSON データの読み取りスキル

WBOY
リリース: 2024-01-04 08:15:55
オリジナル
1833 人が閲覧しました

Pandas での JSON データの読み取りスキル

Pandas を使用して JSON データを読み取るためのヒント

概要:
Pandas は強力なデータ分析ツールであり、JSON は一般的なデータ交換形式です。データ分析プロセス中に、JSON データを読み取る必要がある状況がよく発生します。この記事では、Pandas を使用して JSON データを読み取るためのいくつかのテクニックを紹介し、具体的なコード例を示します。

  1. read_json() 関数を使用して JSON データを読み取る
    Pandas は、JSON データを読み取るための read_json() 関数を提供します。この関数は、JSON データを Pandas DataFrame にロードします。以下は、read_json() 関数を使用して JSON データを読み取るサンプル コードです。
import pandas as pd

# 读取JSON文件
df = pd.read_json('data.json')

# 打印DataFrame的前几行
print(df.head())
ログイン後にコピー

上記のコードでは、read_json() 関数を使用して、「data.json」という名前の JSON ファイルを読み取ります。 " を追加すると、df 変数に読み込まれます。次に、head() 関数を使用して、DataFrame の最初の数行を出力します。

  1. ネストされた JSON データの処理
    JSON データにはネストされた構造が存在することがあります。たとえば、フィールドの値は、複数のフィールドを含む JSON オブジェクトです。このようなネストされた JSON データを読み取る場合、read_json() 関数の「lines」パラメーターを json_normalize() 関数と組み合わせて使用​​し、ネストされたデータを平坦化することができます。以下に例を示します:
import pandas as pd
from pandas.io.json import json_normalize

# 读取包含嵌套JSON数据的文件
with open('data.json') as f:
    data = json.load(f)
    
# 使用json_normalize()函数展平嵌套的数据
df = pd.json_normalize(data)

# 打印DataFrame的前几行
print(df.head())
ログイン後にコピー

上記のコードでは、まず open() 関数を使用してネストされた JSON データを含むファイルを開き、json.load() 関数を使用してデータをロードします。 。次に、 json_normalize() 関数を使用してネストされたデータを平坦化し、結果を df 変数に保存します。

  1. JSON 配列にネストされたデータを読み取る
    JSON データのフィールドの値が JSON 配列である場合があります。この場合、データを読み取るときは、JSON 配列を Pandas シリーズに変換し、explode() 関数を使用して配列を展開できます。以下に例を示します。
import pandas as pd

# 读取包含嵌套JSON数组的文件
df = pd.read_json('data.json')

# 将JSON数组转换为Series,并使用explode()函数展开
df['array_field'] = df['array_field'].apply(pd.Series).explode('array_field')

# 打印DataFrame的前几行
print(df.head())
ログイン後にコピー

上記のコードでは、read_json() 関数を使用して、ネストされた JSON 配列を含むファイルを読み取り、それを df 変数にロードします。次に、JSON 配列は Pandas シリーズに変換され、explode() 関数を使用して展開されます。最後に、DataFrame の最初の数行を出力します。

概要:
この記事では、Pandas を使用して JSON データを読み取るためのいくつかのテクニックを紹介し、具体的なコード例を示します。これらのヒントを理解することで、JSON データをより柔軟に操作し、データ分析をより迅速かつ効率的に行うことができます。この記事がお役に立てば幸いです。

以上がPandas での JSON データの読み取りスキルの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート