Panda: come rinominare le colonne con un dizionario


Puoi utilizzare la seguente sintassi di base per rinominare le colonne con un dizionario in panda:

 #define dictionary
some_dict = {' old_col1 ': ' new_col1 ',
             ' old_col2 ': ' new_col2 ',
             ' old_col3 ': ' new_col3 '}
 
#rename columns in DataFrame using dictionary
df. rename (columns=some_dict, inplace= True )

Nota : è necessario specificare inplace=True per modificare i nomi delle colonne del DataFrame originale.

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

Esempio: rinominare le colonne in Panda con il dizionario

Supponiamo di avere i seguenti panda DataFrame:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' rebounds ': [10, 14, 14, 13, 13, 12, 10, 7],
                    ' points ': [30, 22, 19, 14, 14, 11, 20, 28],
                    ' assists ': [5, 6, 6, 5, 8, 7, 7, 9]})

#view DataFrame
print (df)

   rebound points assists
0 10 30 5
1 14 22 6
2 14 19 6
3 13 14 5
4 13 14 8
5 12 11 7
6 10 20 7
7 7 28 9

Possiamo utilizzare la seguente sintassi per rinominare ciascuna delle colonne nel DataFrame utilizzando un dizionario:

 #define dictionary with new column names
some_dict = {' rebounds ': ' rebs ',
             ' points ': ' pts ',
             ' assists ': ' ast '}
 
#rename columns in DataFrame using dictionary
df. rename (columns=some_dict, inplace= True )

#view updated DataFrame
print (df)

   rebs pts ast
0 10 30 5
1 14 22 6
2 14 19 6
3 13 14 5
4 13 14 8
5 12 11 7
6 10 20 7
7 7 28 9

Tieni presente che ciascuna colonna è stata rinominata in base ai valori specificati nel dizionario.

Vale la pena notare che non è necessario rinominare ogni colonna utilizzando un dizionario.

Ad esempio, potremmo creare un dizionario per rinominare solo le colonne punti e assist del DataFrame:

 #define dictionary with new column names for points and assists only
some_dict = {' points ':' pts ',
             ' assists ': ' ast '}
 
#rename columns in DataFrame using dictionary
df. rename (columns=some_dict, inplace= True )

#view updated DataFrame
print (df)

   rebounds pts ast
0 10 30 5
1 14 22 6
2 14 19 6
3 13 14 5
4 13 14 8
5 12 11 7
6 10 20 7
7 7 28 9

Solo le colonne Punti e Assist sono state rinominate.

Poiché la colonna dei rimbalzi non era inclusa nel dizionario, non è stata rinominata nel DataFrame.

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre operazioni comuni nei panda:

Come elencare tutti i nomi delle colonne in Pandas
Come ordinare le colonne per nome in Pandas
Come rimuovere le colonne duplicate in Pandas

Aggiungi un commento

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