Converti il dizionario Python in Pandas DataFrame

  1. Metodo per convertire il dizionario in Pandas DataFame
  2. Metodo per convertire le chiavi per essere le columns e i valori per essere la row Valori in Pandas DataFrame
  3. Metodo pandas.DataFrame().from_dict() per convertire dict in DataFrame
Converti il dizionario Python in Pandas DataFrame

Introdurremo il metodo per convertire il Python dizionario in Pandas datafarme, e opzioni come avere keys come columns e values come valori row. Potremmo anche convertire il dizionario annidato in DataFrame.

Introdurremo anche un altro approccio usando pandas.DataFrame.from_dict, e lo concateneremo con qualsiasi metodo rename per impostare sia l’indice che i nomi delle colonne in una volta sola.

Metodo per convertire il dizionario in Pandas DataFame

Il costruttore DataFrame di Pandas pd.DataFrame() converte il dizionario in DataFrame se gli item del dizionario sono dati come argomento del costruttore, ma non il dizionario stesso.

# 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"])) 

Le chiavi e i valori del dizionario vengono convertiti in due colonne del DataFrame con i nomi delle colonne dati nelle opzioni columns.

 Quantity FruitName 0 3 apple 1 2 banana 2 6 mango 3 4 apricot 4 1 kiwi 5 8 orange 

Metodo per convertire le chiavi per essere le columns e i valori per essere la row Valori in Pandas DataFrame

Possiamo semplicemente mettere parentesi attorno al dizionario e rimuovere il nome della colonna dal codice sopra in questo modo:

import pandas as pd  fruit_dict = {1: "apple", 2: "banana", 3: "mango", 4: "apricot", 5: "kiwi", 6: "orange"}  print(pd.DataFrame([fruit_dict])) 

Produzione:

 1 2 3 4 5 6 0 apple banana mango apricot kiwi orange 

Useremo i pandas comprensione del dizionario con concat per combinare tutti i dizionari e poi passare l’lista per dare nuovi nomi di colonna.

Considera il codice seguente,

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) 

Produzione:

 dict_index name quantity 0 1 apple 11 1 1 banana 18 2 2 apple 16 3 2 banana 12 

Metodo pandas.DataFrame().from_dict() per convertire dict in DataFrame

Useremo from_dict per convertire dict in DataFrame, qui impostiamo orient='index' per usare le chiavi del dizionario come righe e applicare il metodo rename() per cambiare il nome della colonna.

Considera il codice seguente,

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"}) ) 

Produzione:

 Quantity apple 3 banana 5 mango 7 apricot 1 kiwi 8 orange 3 
Ti piacciono i nostri tutorial? Iscriviti a DelftStack su YouTube per aiutarci a creare altre guide video di alta qualità. Iscriviti

Articolo correlato - Pandas DataFrame