Come invertire un dataframe pandas (con esempio)


È possibile utilizzare la seguente sintassi di base per invertire le righe di un DataFrame panda:

 df_reversed = df[::-1]

Se vuoi invertire le righe del DataFrame e reimpostare i valori dell’indice, puoi utilizzare la seguente sintassi:

 df_reversed = df[::-1]. reset_index (drop= True )

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

Esempio: come invertire un DataFrame Pandas

Supponiamo di avere il seguente DataFrame panda che contiene informazioni su vari giocatori di basket:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'],
                   ' points ': [18, 22, 19, 14, 14, 11, 20, 28],
                   ' assists ': [5, 7, 7, 9, 12, 9, 9, 4]})

#view DataFrame
print (df)

  team points assists
0 to 18 5
1 B 22 7
2 C 19 7
3 D 14 9
4 E 14 12
5 F 11 9
6 G 20 9
7:28 a.m. 4

Possiamo usare la seguente sintassi per invertire le righe del DataFrame:

 #create new DataFrame with rows reversed
df_reversed = df[::-1]

#view new DataFrame
print (df_reversed)

  team points assists
7:28 a.m. 4
6 G 20 9
5 F 11 9
4 E 14 12
3 D 14 9
2 C 19 7
1 B 22 7
0 to 18 5

Si noti che l’ordine delle righe di DataFrame è stato invertito.

Tuttavia, ogni riga contiene ancora il valore dell’indice originale.

Se vuoi invertire le righe del DataFrame e reimpostare i valori dell’indice, puoi utilizzare la seguente sintassi:

 #create reversed DataFrame and reset index values
df_reversed = df[::-1]. reset_index (drop= True )

#view new DataFrame
print (df_reversed)

  team points assists
0:28 4
1 G 20 9
2 F 11 9
3 E 14 12
4 D 14 9
5 C 19 7
6 B 22 7
7 to 18 5

Da notare che l’ordine delle righe è stato invertito e i valori dell’indice sono stati reimpostati.

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre attività comuni nei panda:

Come selezionare le righe con valori NaN in Panda
Come trovare la prima riga che soddisfa i criteri in panda
Come ottenere l’ultima riga in Pandas

Aggiungi un commento

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