Come reimpostare un indice in pandas dataframe (con esempi)
È possibile utilizzare la seguente sintassi per reimpostare un indice in un DataFrame panda:
df. reset_index (drop= True , place= True )
Nota i seguenti argomenti:
- drop : specificando True impedisce ai panda di salvare l’indice originale come colonna nel DataFrame.
- inplace : specificando True consente ai panda di sostituire l’indice nel DataFrame originale invece di creare una copia del DataFrame.
Gli esempi seguenti mostrano come utilizzare questa sintassi nella pratica.
Esempio 1: reimpostare l’indice ed eliminare il vecchio indice
Supponiamo di avere i seguenti panda DataFrame:
import pandas as pd #define DataFrame df = pd. DataFrame ({' points ': [25, 12, 15, 14, 19, 23, 25, 29], ' assists ': [5, 7, 7, 9, 12, 9, 9, 4], ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12]}, index=[0, 4, 3, 5, 2, 1, 7, 6]) #view DataFrame print (df) points assists rebounds 0 25 5 11 4 12 7 8 3 15 7 10 5 14 9 6 2 19 12 6 1 23 9 5 7 25 9 9 6 29 4 12
Il codice seguente mostra come reimpostare l’indice di DataFrame e rimuovere completamente il vecchio indice:
#reset indexes
df. reset_index (drop= True , place= True )
#view updated DataFrame
print (df)
points assists rebounds
0 25 5 11
1 12 7 8
2 15 7 10
3 14 9 6
4 19 12 6
5 23 9 5
6 25 9 9
7 29 4 12
Tieni presente che l’indice è stato reimpostato e i valori dell’indice ora vanno da 0 a 7.
Esempio 2: reimpostare l’indice e mantenere il vecchio indice come colonna
Supponiamo di avere i seguenti panda DataFrame:
import pandas as pd #define DataFrame df = pd. DataFrame ({' points ': [25, 12, 15, 14, 19, 23, 25, 29], ' assists ': [5, 7, 7, 9, 12, 9, 9, 4], ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12]}, index=['A', 'C', 'D', 'B', 'E', 'G', 'F', 'H']) #view DataFrame print (df) points assists rebounds A 25 5 11 C 12 7 8 D 15 7 10 B 14 9 6 E 19 12 6 G 23 9 5 F 25 9 9 H 29 4 12
Il codice seguente mostra come reimpostare l’indice del DataFrame e mantenere il vecchio indice come colonna nel DataFrame:
#reset index and retain old index as a column
df. reset_index (inplace= True )
#view updated DataFrame
print (df)
index points assists rebounds
0 to 25 5 11
1 C 12 7 8
2 D 15 7 10
3 B 14 9 6
4 E 19 12 6
5G 23 9 5
6 F 25 9 9
7:29 4 12
Tieni presente che l’indice è stato reimpostato e i valori dell’indice ora vanno da 0 a 7.
Si noti inoltre che il vecchio indice (con le lettere) viene conservato come una nuova colonna nel DataFrame chiamata “indice”.
Risorse addizionali
I seguenti tutorial spiegano come eseguire altre operazioni comuni nei panda:
Come convertire l’indice in colonna in Pandas
Come impostare la colonna come indice in Pandas
Come rinominare l’indice in Pandas