Voici un cheatsheet pour la gestion des données JSON avec Python, en utilisant les bibliothèques json
et pandas
.
Chargement de données JSON
import json
import pandas as pd
# Lire un fichier JSON
with open('path/to/your/file.json', 'r') as f:
data = json.load(f)
# Afficher le contenu du fichier JSON
print(data)
Conversion de JSON en DataFrame
# Si le JSON est une liste de dictionnaires
df = pd.DataFrame(data)
# Si le JSON est un dictionnaire avec des listes comme valeurs
df = pd.DataFrame.from_dict(data, orient='index').reset_index()
Manipulation de colonnes
# Retirer une colonne
df_sans_colonne = df.drop(columns='colonne')
# Retirer plusieurs colonnes
df_sans_colonnes = df.drop(columns=['colonne1', 'colonne2'])
# Ajouter une colonne
df['nouvelle_colonne'] = valeur
# Renommer une colonne
df_renomme = df.rename(columns={'ancien_nom': 'nouveau_nom'})
# Ajouter une colonne calculée
df['nouvelle_colonne_calculée'] = df['colonne_existante'].apply(lambda x: x * 2)
Manipulation de lignes
# Retirer les lignes où une colonne a des valeurs NA
df_cleaned = df.dropna(subset=['colonne'])
# Filtrer les données
df_filtré = df[df['colonne'] > 10]
Types et informations des données
# Récupérer le type des colonnes
types_colonnes = df.dtypes
print(types_colonnes)
Jointures de DataFrames
# Jointure externe (outer join)
merged_data = pd.merge(df1, df2, on='clé', how='outer')
# Jointure gauche (left join)
merged_data = pd.merge(df1, df2, on='clé', how='left')
# Jointure droite (right join)
merged_data = pd.merge(df1, df2, on='clé', how='right')
Manipulation de dictionnaires
# Récupérer toutes les valeurs d'un dictionnaire
valeurs = list(data.values())
# Retirer un champ d'un dictionnaire
data.pop('champ', None)
# Transformer un dictionnaire en DataFrame
df_dict = pd.DataFrame.from_dict(data, orient='index').reset_index()
Transformation de données
# Transformer une liste de dictionnaires en DataFrame
data = [{'nom': 'Alice', 'age': 25}, {'nom': 'Bob', 'age': 30}]
df = pd.DataFrame(data)
Informations supplémentaires et fonctions utiles
# Afficher les 5 premières lignes du DataFrame
print(df.head())
# Obtenir des informations générales sur le DataFrame
print(df.info())
# Résumé statistique des données
print(df.describe())
Exemple complet d’utilisation
import json
import pandas as pd
# Lire un fichier JSON
json_file_path = 'path/to/your/file.json'
with open(json_file_path, 'r') as f:
data = json.load(f)
# Convertir en DataFrame
df = pd.DataFrame(data)
# Retirer des colonnes
df = df.drop(columns=['colonne1', 'colonne2'])
# Ajouter une colonne avec une valeur par défaut
df['Date'] = '2024-08-08'
# Retirer les lignes où 'pageValue' est NA
df_cleaned = df.dropna(subset=['pageValue'])
# Renommer une colonne
df_renomme = df_cleaned.rename(columns={'ancien_nom': 'nouveau_nom'})
# Ajouter une colonne calculée
df_renomme['nouvelle_colonne_calculée'] = df_renomme['colonne_existante'].apply(lambda x: x * 2)
# Filtrer les données
df_filtré = df_renomme[df_renomme['colonne'] > 10]
# Jointure externe avec un autre DataFrame
another_data = [{'clé': 1, 'valeur': 'A'}, {'clé': 2, 'valeur': 'B'}]
df_another = pd.DataFrame(another_data)
merged_data = pd.merge(df_filtré, df_another, on='clé', how='outer')
# Afficher les 5 premières lignes du DataFrame final
print(merged_data.head())
Avec ce cheatsheet, vous avez un guide complet pour manipuler des données JSON en Python en utilisant les bibliothèques json
et pandas
.
0 commentaire