Come utilizzare la funzione pandas burst() (con esempi)
Puoi utilizzare la funzione pandas burst() per trasformare ogni elemento di un elenco in linea in un DataFrame.
Questa funzione utilizza la seguente sintassi di base:
df. explode (' variable_to_explode ')
L’esempio seguente mostra come utilizzare questa sintassi nella pratica.
Esempio: utilizzare la funzione esplosiva() con Pandas DataFrame
Supponiamo di avere i seguenti panda DataFrame:
import pandas as pd #createDataFrame df = pd. DataFrame ({' team ': [['A', 'B', 'C'], ['D', 'E', 'F'], ['G', 'H', 'I']] , ' position ':['Guard', 'Forward', 'Center'], ' points ': [7, 14, 19]}) #view DataFrame df team position points 0 [A, B, C] Guard 7 1 [D, E, F] Forward 14 2 [G, H, I] Center 19
Tieni presente che la colonna della squadra contiene elenchi di nomi di squadra.
Possiamo usare la funzione esplode() per esplodere ogni elemento di ciascuna lista in una riga:
#explode team column
df. explode (' team ')
team position points
0 A Guard 7
0 B Guard 7
0 C Guard 7
1D Forward 14
1 E Forward 14
1 F Forward 14
2G Center 19
2H Center 19
2 I Center 19
Tieni presente che la colonna della squadra non contiene più elenchi. Abbiamo “esploso” ogni elemento di ciascun elenco in un’unica riga.
Tieni inoltre presente che alcune righe ora hanno lo stesso valore di indice.
Possiamo usare la funzione reset_index() per reimpostare l’indice durante il bursting della colonna del team:
#explode team column and reset index of resulting dataFrame
df. explode (' team '). reset_index (drop= True )
team position points
0 A Guard 7
1 B Guard 7
2 C Guard 7
3D Forward 14
4 E Forward 14
5 F Forward 14
6G Center 19
7 A.M. Center 19
8 I Center 19
Tieni presente che ogni riga ora ha un valore di indice univoco.
Risorse addizionali
I seguenti tutorial spiegano come eseguire altre operazioni comuni nei panda:
Come dividere una colonna di stringhe in Pandas in più colonne
Come dividere Pandas DataFrame in più DataFrame
Come dividere Pandas DataFrame in base al valore della colonna