Lavorare con i dati spesso richiede di snellire il nostro dataframe, eliminando le colonne che non ci servono.
In questa micro-lezione vedremo come farlo in modo semplice e veloce con Python.
Il programma della micro-lezione
Le librerie e il dataframe
Per prima cosa, importiamo la libreria pandas:
import pandas as pdCostruiamo adesso un dataframe. Se ne hai giร uno su cui stai lavorando puoi saltare questo passaggio.
df = pd.DataFrame({
'Prodotto': ['A', 'B', 'C'],
'Gen': [100, 120, 90],
'Feb': [110, 130, 95],
'Mar': [105, 125, 100]
})Il nostro dataframe avrร questo aspetto:
Prodotto | Gen | Feb | Mar |
|---|---|---|---|
A | 100 | 110 | 105 |
B | 120 | 130 | 125 |
C | 90 | 95 | 100 |
Metodo 1: la semplicitร di drop()
Supponiamo di voler eliminare la colonna โGenโ. Ecco come farlo:
df2 = df.drop('Gen', axis=1)Attenzione!
L'argomento axis=1 indica a pandas di operare sulle colonne. Se lo ometti, elimineremo delle righe!
Ed ecco qui il nostro dataframe senza la colonna โGenโ.
Prodotto | Feb | Mar |
|---|---|---|
A | 110 | 105 |
B | 130 | 125 |
C | 95 | 100 |
Eliminare piรน colonne con drop()
Se vogliamo eliminare piรน colonne in una volta, possiamo usare una lista:
df3 = df.drop(['Gen', 'Feb'], axis=1)Ed ecco il risultato:
Prodotto | Mar |
|---|---|
A | 105 |
B | 125 |
C | 100 |
Metodo 2: lโessenzialitร di โdelโ
Un'altra opzione รจ utilizzare il metodo del:
del df['Prodotto']Il metodo del non รจ tipico della libreria pandas, ma รจ un metodo di Python, e come tale ha applicazioni piรน vaste, che vanno al di lร dellโanalisi dei dati.
Il metodo del viene usato in Python per cancellare degli oggetti.
In Python, tutto รจ un oggetto. Quindi del puรฒ essere usato per rimuovere variabili, liste, ecc.
Attenzione!
Il metodo del modifica il dataframe originale e non restituisce una copia. Usalo con cautela.
Metodo 3: la sobrietร di pop()
Come del, pop() รจ un metodo semplice e immediato. A differenza di del, pop() รจ esclusivo della libreria pandas.
Ecco come usarlo:
df.pop('Prodotto')pop() รจ lโideale per eliminare al volo una colonna, senza troppi fronzoli.
Metodo 4: la versatilitร di โlocโ
Il metodo loc รจ uno dei piรน popolari in Python grazie alla sua versatilitร .
Senza sorpresa, puรฒ essere usato per rimuovere una colonna dal nostro dataframe. Ecco come fare:
df4 = df.loc[:, df.columns != 'Gen']Il primo argomento di loc riguarda le righe. In questo caso stiamo selezionando tutte le righe del nostro dataframe, dalla prima allโultima.
Questo รจ fatto dalla prima parte di loc:
df.loc[:]Nella seconda parte del comando, selezioniamo le colonne. Nel nostro esempio, decidiamo di tenere tutte le colonne che non si chiamano โGenโ.
Di conseguenza, la colonna โGenโ sarร eliminata:
Prodotto | Feb | Mar |
|---|---|---|
A | 110 | 105 |
B | 130 | 125 |
C | 95 | 100 |
Importante!
Ricorda sempre di assegnare il risultato a una variabile: df4 = ....
In questo modo potrai conservare le modifiche!
Quale metodo usare?
Per rimuovere semplicemente una o piรน colonne, molto spesso lโopzione piรน comoda sarร drop()
Si tratta infatti di un metodo rapido e facilmente leggibile, che permette anche di rimuovere piรน colonne in una volta sola.
Per manipolazioni piรน complesse invece, molto spesso loc รจ la scelta vincente, anche perchรฉ permette di rimuovere colonne in base alla loro posizione nel dataframe, senza specificarne il nome.
Alla prossima micro-lezione ๐ย
