Panda: converti rapidamente un dataframe in un dizionario


È possibile utilizzare la seguente sintassi per convertire un DataFrame panda in un dizionario:

 df. to_dict ()

Tieni presente che to_dict() accetta i seguenti potenziali argomenti:

  • dict: (impostazione predefinita) le chiavi sono nomi di colonne. I valori sono dizionari di coppie indice:dati.
  • list: le chiavi sono nomi di colonne. I valori sono elenchi di dati di colonna.
  • serie: le chiavi sono nomi di colonne. I valori sono serie di dati di colonna.
  • suddivisi: le chiavi sono “colonne”, “dati” e “indice”.
  • record: le chiavi sono nomi di colonne. I valori sono dati nelle celle.
  • indice: le chiavi sono etichette di indice. I valori sono dati nelle celle.

I seguenti esempi mostrano come utilizzare questa sintassi in pratica con i seguenti DataFrame panda:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'B', 'B', 'C'],
                   ' points ': [5, 7, 9, 12, 9],
                   ' rebounds ': [11, 8, 6, 6, 5]})

#view DataFrame
df

	team points rebounds
0 to 5 11
1 to 7 8
2 B 9 6
3 B 12 6
4 C 9 5

Esempio 1: convertire un DataFrame in un dizionario (“dict”)

Il codice seguente mostra come convertire un DataFrame panda in un dizionario utilizzando il metodo ‘ dict ‘ predefinito:

 df. to_dict ()

{'team': {0: 'A', 1: 'A', 2: 'B', 3: 'B', 4: 'C'},
 'points': {0:5, 1:7, 2:9, 3:12, 4:9},
 'rebounds': {0:11, 1:8, 2:6, 3:6, 4:5}}

Esempio 2: convertire un DataFrame in un dizionario (“Elenco”)

Il codice seguente mostra come convertire un DataFrame panda in un dizionario utilizzando il metodo ‘ list ‘:

 df. to_dict (' list ')

{'team': ['A', 'A', 'B', 'B', 'C'],
 'points': [5, 7, 9, 12, 9],
 'rebounds': [11, 8, 6, 6, 5]}

Esempio 3: convertire un DataFrame in un dizionario (“serie”)

Il codice seguente mostra come convertire un DataFrame panda in un dizionario utilizzando il metodo ‘ series ‘:

 df. to_dict (' series ')

{'team': 0 A
 1A
 2 B
 3 B
 4C
 Name: team, dtype: object,
 'points': 0 5
 1 7
 2 9
 3 12
 4 9
 Name: points, dtype: int64,
 'rebounds': 0 11
 1 8
 2 6
 3 6
 4 5
 Name: rebounds, dtype: int64}

Esempio 4: convertire un DataFrame in un dizionario (“diviso”)

Il codice seguente mostra come convertire un DataFrame panda in un dizionario utilizzando il metodo ‘ split ‘:

 df. to_dict (' split ')

{'index': [0, 1, 2, 3, 4],
 'columns': ['team', 'points', 'rebounds'],
 'data': [['A', 5, 11], ['A', 7, 8], ['B', 9, 6], ['B', 12, 6], ['C', 9, 5]]}

Esempio 5: convertire un DataFrame in un dizionario (“record”)

Il codice seguente mostra come convertire un DataFrame panda in un dizionario utilizzando il metodo ‘ records ‘:

 df. to_dict (' records ')

[{'team': 'A', 'points': 5, 'rebounds': 11},
 {'team': 'A', 'points': 7, 'rebounds': 8},
 {'team': 'B', 'points': 9, 'rebounds': 6},
 {'team': 'B', 'points': 12, 'rebounds': 6},
 {'team': 'C', 'points': 9, 'rebounds': 5}]

Esempio 6: convertire un DataFrame in un dizionario (“indice”)

Il codice seguente mostra come convertire un DataFrame panda in un dizionario utilizzando il metodo ‘ index ‘:

 df. to_dict (' index ')

{0: {'team': 'A', 'points': 5, 'rebounds': 11},
 1: {'team': 'A', 'points': 7, 'rebounds': 8},
 2: {'team': 'B', 'points': 9, 'rebounds': 6},
 3: {'team': 'B', 'points': 12, 'rebounds': 6},
 4: {'team': 'C', 'points': 9, 'rebounds': 5}}

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre conversioni di dati comuni nei panda:

Come convertire Pandas DataFrame nell’array NumPy
Come convertire la serie Panda nell’array NumPy
Come convertire Pandas DataFrame in List

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *