Comment convertir le dictionnaire Python en Pandas DataFrame
-
Méthode de conversion du
dictionnaireenDataFamede Pandas -
Méthode de conversion des
clésencolonneset desvaleursenlignedans la PandasDataFrame -
Méthode
pandas.DataFrame().from_dict()pour convertirdictenDataFrame
Nous allons présenter la méthode pour convertir le dictionnaire Python en datafarme Pandas, et les options comme avoir des clés pour les colonnes et des valeurs pour les lignes. Nous pourrions également convertir le dictionnaire imbriqué en DataFrame.
Nous allons également introduire une autre approche en utilisant pandas.DataFrame.from_dict, et nous allons l’enchaîner avec n’importe quelle méthode rename pour définir les noms de l’index et des colonnes en une seule fois.
Méthode de conversion du dictionnaire en DataFame de Pandas
Le constructeur de Pandas DataFrame pd.DataFrame() convertit le dictionnaire en DataFrame si les éléments du dictionnaire sont donnés comme argument du constructeur, mais pas le dictionnaire lui-même.
# python 3.x
import pandas as pd
fruit_dict = {3: "apple", 2: "banana", 6: "mango", 4: "apricot", 1: "kiwi", 8: "orange"}
print(pd.DataFrame(list(fruit_dict.items()), columns=["Quantity", "FruitName"]))
Les clés et les valeurs du dictionnaire sont converties en deux colonnes de la DataFrame avec les noms de colonnes donnés dans les options columns.
Quantity FruitName
0 3 apple
1 2 banana
2 6 mango
3 4 apricot
4 1 kiwi
5 8 orange
Méthode de conversion des clés en colonnes et des valeurs en ligne dans la Pandas DataFrame
Nous pouvons simplement mettre des crochets autour du dictionnaire et retirer le nom de la colonne du code ci-dessus comme ceci:
import pandas as pd
fruit_dict = {1: "apple", 2: "banana", 3: "mango", 4: "apricot", 5: "kiwi", 6: "orange"}
print(pd.DataFrame([fruit_dict]))
Production:
1 2 3 4 5 6
0 apple banana mango apricot kiwi orange
Nous utiliserons Pandas compréhension de dictionnaire avec concat pour combiner tous les dictionnaires et ensuite passer la liste pour donner de nouveaux noms de colonnes.
Considérons le code suivant,
import pandas as pd
data = {"1": {"apple": 11, "banana": 18}, "2": {"apple": 16, "banana": 12}}
df = pd.concat({k: pd.Series(v) for k, v in data.items()}).reset_index()
df.columns = ["dict_index", "name", "quantity"]
print(df)
Production:
dict_index name quantity
0 1 apple 11
1 1 banana 18
2 2 apple 16
3 2 banana 12
Méthode pandas.DataFrame().from_dict() pour convertir dict en DataFrame
Nous allons utiliser from_dict pour convertir dict en DataFrame, ici nous mettons orient='index' pour utiliser les clés du dictionnaire comme lignes et appliquer la méthode rename() pour changer le nom de la colonne.
Considérons le code suivant,
import pandas as pd
print(
pd.DataFrame.from_dict(
{"apple": 3, "banana": 5, "mango": 7, "apricot": 1, "kiwi": 8, "orange": 3},
orient="index",
).rename(columns={0: "Qunatity"})
)
Production:
Quantity
apple 3
banana 5
mango 7
apricot 1
kiwi 8
orange 3
Article connexe - Pandas DataFrame
- Comment obtenir les en-têtes de colonne de Pandas DataFrame sous forme de liste
- Comment supprimer une colonne de Pandas DataFrame
- Comment convertir la colonne DataFrame en date-heure dans Pandas
- Comment convertir un float en un entier dans Pandas DataFrame
- Comment trier le DataFrame de Pandas par les valeurs d'une colonne
- Comment obtenir l'agrégat des Pandas par groupe et par somme