Vediamo come eliminare una o più colonne da un DataFrame Pandas. Ci sono molteplici modi per cancellare una colonna o più colonne da un DataFrame.
Per il nostro esempio, iniziamo creando un semplice Dataframe.
# Importa pandas
import pandas as pd
# Crea un dizionario con cinque campi
data = {
'A':['A1', 'A2', 'A3', 'A4', 'A5'],
'B':['B1', 'B2', 'B3', 'B4', 'B5'],
'C':['C1', 'C2', 'C3', 'C4', 'C5'],
'D':['D1', 'D2', 'D3', 'D4', 'D5'],
'E':['E1', 'E2', 'E3', 'E4', 'E5'] }
# Converti il dizionario in un DataFrame
df = pd.DataFrame(data)
df
Output:
# Importa pandas
import pandas as pd
# Crea un dizionario con cinque campi
data = {
'A':['A1', 'A2', 'A3', 'A4', 'A5'],
'B':['B1', 'B2', 'B3', 'B4', 'B5'],
'C':['C1', 'C2', 'C3', 'C4', 'C5'],
'D':['D1', 'D2', 'D3', 'D4', 'D5'],
'E':['E1', 'E2', 'E3', 'E4', 'E5'] }
# Converti il dizionario in un DataFrame
df = pd.DataFrame(data)
# Rimuovi la colonna "A"
df.drop(['A'], axis = 1)
Output:
# Importa pandas
import pandas as pd
# Crea un dizionario con cinque campi
data = {
'A':['A1', 'A2', 'A3', 'A4', 'A5'],
'B':['B1', 'B2', 'B3', 'B4', 'B5'],
'C':['C1', 'C2', 'C3', 'C4', 'C5'],
'D':['D1', 'D2', 'D3', 'D4', 'D5'],
'E':['E1', 'E2', 'E3', 'E4', 'E5'] }
# Converti il dizionario in un DataFrame
df = pd.DataFrame(data)
# Rimuovi le colonne "C" e "D"
df.drop(['C', 'D'], axis = 1)
Output:
# Importa pandas
import pandas as pd
# Crea un dizionario con cinque campi
data = {
'A':['A1', 'A2', 'A3', 'A4', 'A5'],
'B':['B1', 'B2', 'B3', 'B4', 'B5'],
'C':['C1', 'C2', 'C3', 'C4', 'C5'],
'D':['D1', 'D2', 'D3', 'D4', 'D5'],
'E':['E1', 'E2', 'E3', 'E4', 'E5'] }
# Converti il dizionario in un DataFrame
df = pd.DataFrame(data)
# Rimuovi tutte le colonne tra la colonna index 1 e la colonna index 3
df.drop(df.iloc[:, 1:3], inplace = True, axis = 1)
Output:
# Importa pandas
import pandas as pd
# Crea un dizionario con cinque campi
data = {
'A':['A1', 'A2', 'A3', 'A4', 'A5'],
'B':['B1', 'B2', 'B3', 'B4', 'B5'],
'C':['C1', 'C2', 'C3', 'C4', 'C5'],
'D':['D1', 'D2', 'D3', 'D4', 'D5'],
'E':['E1', 'E2', 'E3', 'E4', 'E5'] }
# Converti il dizionario in un DataFrame
df = pd.DataFrame(data)
# Rimuovi tutte le colonne tra la colonna "B" e la "D"
df.drop(df.loc[:, 'B':'D'].columns, axis = 1)
Output:
Nota: a differenza di loc(), iloc() esclude l'ultima colonna dal range
# Importa pandas
import pandas as pd
# Crea un dizionario con cinque campi
data = {
'A':['A1', 'A2', 'A3', 'A4', 'A5'],
'B':['B1', 'B2', 'B3', 'B4', 'B5'],
'C':['C1', 'C2', 'C3', 'C4', 'C5'],
'D':['D1', 'D2', 'D3', 'D4', 'D5'],
'E':['E1', 'E2', 'E3', 'E4', 'E5'] }
# Converti il dizionario in un DataFrame
df = pd.DataFrame(data)
# Rimuovi la colonna "A"
for col in df.columns:
if 'A' in col:
del df[col]
df
Output: