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.

Le librerie e il dataframe

Per prima cosa, importiamo la libreria pandas:

import pandas as pd

Costruiamo 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 ๐Ÿ‘‹ย