Compétences en lecture de données JSON dans Pandas

WBOY
Libérer: 2024-01-04 08:15:55
original
1834 Les gens l'ont consulté

Compétences en lecture de données JSON dans Pandas

Conseils pour lire les données JSON à l'aide de Pandas

Présentation :
Pandas est un puissant outil d'analyse de données et JSON est un format d'échange de données courant. Au cours du processus d'analyse des données, nous rencontrons souvent des situations dans lesquelles nous devons lire des données JSON. Cet article présentera quelques techniques de lecture de données JSON à l'aide de Pandas et fournira des exemples de code spécifiques.

  1. Utilisez la fonction read_json() pour lire les données JSON
    Pandas fournit la fonction read_json() pour lire les données JSON. Cette fonction charge les données JSON dans un Pandas DataFrame. Voici un exemple de code pour lire des données JSON à l'aide de la fonction read_json() :
import pandas as pd

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

# 打印DataFrame的前几行
print(df.head())
Copier après la connexion

Dans le code ci-dessus, nous utilisons la fonction read_json() pour lire le fichier JSON nommé "data.json" et le charger dans le df variables. Utilisez ensuite la fonction head() pour imprimer les premières lignes du DataFrame.

  1. Traitement des données JSON imbriquées
    Parfois, il existe des structures imbriquées dans les données JSON. Par exemple, la valeur d'un champ est un objet JSON contenant plusieurs champs. Lors de la lecture de telles données JSON imbriquées, nous pouvons utiliser le paramètre « lines » de la fonction read_json() en combinaison avec la fonction json_normalize() pour aplatir les données imbriquées. Voici un exemple :
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())
Copier après la connexion

Dans le code ci-dessus, nous utilisons d'abord la fonction open() pour ouvrir le fichier contenant les données JSON imbriquées, et utilisons la fonction json.load() pour charger les données. Utilisez ensuite la fonction json_normalize() pour aplatir les données imbriquées et enregistrez le résultat dans la variable df.

  1. Lire les données imbriquées dans un tableau JSON
    Parfois, la valeur d'un champ dans les données JSON est un tableau JSON. Lors de la lecture des données dans ce cas, nous pouvons convertir le tableau JSON en série Pandas et étendre le tableau à l'aide de la fonction éclater(). Voici un exemple :
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())
Copier après la connexion

Dans le code ci-dessus, nous utilisons la fonction read_json() pour lire un fichier contenant un tableau JSON imbriqué et le charger dans la variable df. Le tableau JSON est ensuite converti en série Pandas et étendu à l'aide de la fonction explosive(). Imprimez enfin les premières lignes du DataFrame.

Résumé :
Cet article présente quelques techniques de lecture de données JSON à l'aide de Pandas et fournit des exemples de code spécifiques. En comprenant ces conseils, vous pouvez travailler avec les données JSON de manière plus flexible et rendre l'analyse des données plus rapide et plus efficace. J'espère que cet article vous sera utile.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal