Eliminare le colonne per indice in Pandas DataFrame
I DataFrame possono essere molto grandi e possono contenere centinaia di righe e colonne. È necessario essere esperti nelle operazioni di manutenzione di base di un DataFrame, come l’eliminazione di più colonne. Possiamo usare il metodo dataframe.drop()
per eliminare colonne o righe dal DataFrame a seconda dell’axis
specificato, 0 per le righe e 1 per le colonne. Identifica gli elementi da rimuovere in base ad alcune etichette. Ad esempio, elimineremo la colonna 'a'
dal seguente DataFrame.
import pandas as pd
df = pd.DataFrame(
[[10, 6, 7, 8], [1, 9, 12, 14], [5, 8, 10, 6]], columns=["a", "b", "c", "d"]
)
print(df)
df.drop(["a"], axis=1, inplace=True)
print(df)
Produzione:
a b c d
0 10 6 7 8
1 1 9 12 14
2 5 8 10 6
b c d
0 6 7 8
1 9 12 14
2 8 10 6
Si noti l’uso del parametro inplace
nella funzione di rilascio. Con il parametro inplace
impostato come True
, le colonne vengono rimosse dal DataFrame originale; in caso contrario, viene restituita una copia dell’originale.
Nel nostro esempio, abbiamo rimosso la colonna 'a'
, ma dobbiamo passare il nome dell’etichetta alla funzione dataframe.drop()
. Quando si ha a che fare con set di dati di grandi dimensioni, è necessario gestire tali attività per molte colonne contemporaneamente e utilizzando gli indici di colonna invece dei loro nomi.
Possiamo ottenere ciò utilizzando il metodo dataframe.columns()
, che restituisce tutte le colonne di un DataFrame e passa le etichette di colonna richieste utilizzando i loro indici alla funzione dataframe.drop()
. Il seguente frammento di codice spiega come possiamo farlo.
import pandas as pd
df = pd.DataFrame(
[[10, 6, 7, 8], [1, 9, 12, 14], [5, 8, 10, 6]], columns=["a", "b", "c", "d"]
)
df.drop(df.columns[[1, 2]], axis=1, inplace=True)
print(df)
Produzione:
a d
0 10 8
1 1 14
2 5 6
Elimina le colonne il cui indice è 1
o 2
.
Possiamo anche evitare di usare il parametro axis
menzionando semplicemente il parametro columns
nella funzione dataframe.drop()
, che indica automaticamente che le colonne devono essere eliminate. Esempio:
import pandas as pd
df = pd.DataFrame(
[[10, 6, 7, 8], [1, 9, 12, 14], [5, 8, 10, 6]], columns=["a", "b", "c", "d"]
)
df.drop(columns=df.columns[[1, 2]], inplace=True)
print(df)
Produzione:
a d
0 10 8
1 1 14
2 5 6
Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.
LinkedInArticolo 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