Panda: come rimodellare il dataframe da lungo a largo


È possibile utilizzare la seguente sintassi di base per convertire un DataFrame panda dal formato lungo a quello ampio:

 df = pd. pivot (df, index=' col1 ', columns=' col2 ', values=' col3 ')

In questo scenario, col1 diventerà l’indice, col2 diventeranno le colonne e col3 verranno utilizzati come valori all’interno del DataFrame.

L’esempio seguente mostra come utilizzare questa sintassi nella pratica.

Esempio: rimodella il DataFrame Pandas da lungo a largo

Supponiamo di avere i seguenti panda DataFrame in un formato lungo:

 import pandas as pd

#create DataFrame in long format
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'],
                   ' player ': [1, 2, 3, 4, 1, 2, 3, 4],
                   ' points ': [11, 8, 10, 6, 12, 5, 9, 4]})

#view DataFrame
df

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

Possiamo utilizzare la seguente sintassi per rimodellare questo DataFrame dal formato lungo al formato ampio:

 #reshape DataFrame from long format to wide format
df = pd. pivot (df, index=' team ', columns=' player ', values=' points ')

#view updated DataFrame
df

player 1 2 3 4
team				
A 11 8 10 6
B 12 5 9 4

Il DataFrame è ora in un formato ampio.

Abbiamo utilizzato “squadra” come colonna dell’indice, “giocatore” come colonne e “punti” come valori all’interno del DataFrame.

Nota che potremmo invece usare “giocatore” come colonna dell’indice e “squadra” come colonne, se lo desideriamo:

 #reshape DataFrame from long format to wide format
df = pd. pivot (df, index=' player ', columns=' team ', values=' points ')

#view updated DataFrame
df

team A B
player		
1 11 12
2 8 5
3 10 9
4 6 4

Anche questo DataFrame è in formato ampio.

Nota : puoi trovare la documentazione completa della funzione pandas pivot() qui .

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre operazioni comuni in Python:

Panda: come rimodellare il DataFrame da largo a lungo
Come aggiungere righe a un DataFrame Pandas
Come aggiungere colonne a un DataFrame Pandas
Come contare le occorrenze di valori specifici in Pandas DataFrame

Aggiungi un commento

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