Rinomina colonne in Pandas DataFrame
-
Rinomina le colonne in Pandas
DataFrame
utilizzando il metodoDataFrame.columns
-
Rinomina le colonne in Pandas
DataFrame
usando il metodoDataFrame.rename()
-
Rinomina colonne in Pandas
DataFrame
utilizzando il metodoDataFrame.set_axis()
Spesso è necessario rinominare una colonna in Pandas quando si esegue l’analisi dei dati. Questo articolo introdurrà diversi metodi per rinominare i nomi delle colonne Pandas in Pandas DataFrame
.
Rinomina le colonne in Pandas DataFrame
utilizzando il metodo DataFrame.columns
Questo metodo è piuttosto semplice e ti consente di rinominare le colonne direttamente. Possiamo assegnare una lista di nuovi nomi di colonna utilizzando l’attributo DataFrame.columns
come segue:
import pandas as pd
example_df = pd.DataFrame(
[["John", 20, 45], ["Peter", 21, 62], ["Scot", 25, 68]],
index=[0, 1, 2],
columns=["Name", "Age", "Marks"],
)
print "\nOriginal DataFrame"
print (pd.DataFrame(example_df))
example_df.columns = ["Name", "Age", "Roll_no"]
print "\nModified DataFrame"
print (pd.DataFrame(example_df))
Produzione:
Original DataFrame
Name Age Marks
0 John 20 45
1 Peter 21 62
2 Scot 25 68
Modified DataFrame
Name Age Roll_no
0 John 20 45
1 Peter 21 62
2 Scot 25 68
Uno svantaggio di questo approccio è che devi elencare l’intera colonna anche se solo una delle colonne deve essere rinominata. La specifica dell’intero lista di colonne diventa impraticabile quando si dispone di un numero elevato di colonne.
Rinomina le colonne in Pandas DataFrame
usando il metodo DataFrame.rename()
L’approccio alternativo al metodo precedente utilizza il metodo DataFrame.rename()
. Questo metodo è molto utile quando non è necessario rinominare tutte le colonne.
Dovremo specificare il vecchio nome della colonna come chiave e i nuovi nomi come valori.
import pandas as pd
example_df = pd.DataFrame(
[["John", 20, 45, 78], ["Peter", 21, 62, 68], ["Scot", 25, 68, 95]],
index=[0, 1, 2],
columns=["Name", "Age", "Marks", "Roll_no"],
)
print "\nOriginal DataFrame"
print (pd.DataFrame(example_df))
example_df.rename(columns={"Marks": "Roll_no", "Roll_no": "Marks"}, inplace=True)
print "\nModified DataFrame"
print (pd.DataFrame(example_df))
Produzione:
Original DataFrame
Name Age Marks Roll_no
0 John 20 45 78
1 Peter 21 62 68
2 Scot 25 68 95
Modified DataFrame
Name Age Roll_no Marks
0 John 20 45 78
1 Peter 21 62 68
2 Scot 25 68 95
Il vantaggio più significativo di questo metodo è che puoi specificare tutte le colonne che desideri. È molto utile quando è necessario rinominare colonne specifiche e, a differenza dei metodi precedenti, non è necessario elencare l’intero lista di colonne per il DataFrame
.
Potresti notare che nella chiamata alla funzione DataFrame.rename()
, abbiamo specificato il parametro inplace
come True
. Il parametro inplace
è di default False
e determina se restituire o meno un nuovo pandas DataFrame
.
Specificarlo come True
significa che la chiamata alla funzione non restituisce un nuovo pandas DataFrame
ma cambia il DataFrame
esistente al suo posto.
Rinomina colonne in Pandas DataFrame
utilizzando il metodo DataFrame.set_axis()
Un altro metodo conveniente per rinominare le colonne di pandas DataFrame
. Dobbiamo specificare l’intero lista di colonne durante l’utilizzo di questo metodo.
import pandas as pd
example_df = pd.DataFrame(
[["John", 20, 45, 78], ["Peter", 21, 62, 68], ["Scot", 25, 68, 95]],
index=[0, 1, 2],
columns=["Name", "Age", "Marks", "Roll_no"],
)
print "\nOriginal DataFrame"
print (pd.DataFrame(example_df))
example_df.set_axis(["Name", "Age", "Roll_no", "Marks"], axis="columns", inplace=True)
print "\nModified DataFrame"
print (pd.DataFrame(example_df))
Produzione:
Original DataFrame
Name Age Marks Roll_no
0 John 20 45 78
1 Peter 21 62 68
2 Scot 25 68 95
Modified DataFrame
Name Age Roll_no Marks
0 John 20 45 78
1 Peter 21 62 68
2 Scot 25 68 95
Articolo correlato - Pandas DataFrame
- Come ottenere le intestazioni delle colonne DataFrame Pandas come lista
- Come cancellare la colonna DataFrame Pandas DataFrame
- Come convertire la colonna DataFrame in data e ora in pandas
- Converti un Float in un Integer in Pandas DataFrame
- Ordina Pandas DataFrame in base ai valori di una colonna
- Ottieni l'aggregato di Pandas Group-By e Sum