Aggiungere e rimuovere colonne e righe da dataframe Pandas

Una delle operazioni fondamentali che è possibile eseguire su un DataFrame è l'aggiunta e la rimozione di colonne e righe. Queste operazioni sono essenziali per la pulizia dei dati, la trasformazione e la preparazione per ulteriori analisi.

Aggiungere colonne a un DataFrame Pandas

Aggiungere una nuova colonna a un DataFrame è un'operazione comune, spesso necessaria per calcolare nuove variabili o aggiungere informazioni supplementari.

Il metodo più semplice per aggiungere una colonna a un DataFrame è assegnare un valore a una nuova colonna.

import pandas as pd # Creazione di un DataFrame di esempio data = {     'Nome': ['Luca', 'Marta', 'Giovanni', 'Anna'],     'Età': [25, 30, 22, 28] } df = pd.DataFrame(data) # Aggiunta di una nuova colonna con un valore fisso df['Salario'] = 50000 print(df)

In questo esempio, abbiamo aggiunto una colonna chiamata 'Salario' a tutti i record del DataFrame, assegnando a ciascuno un valore fisso di 50.000.

Spesso, le nuove colonne sono il risultato di un calcolo basato su colonne esistenti.

# Aggiunta di una colonna basata su un calcolo df['Anni_dopo_10'] = df['Età'] + 10 print(df)

Qui, abbiamo aggiunto una colonna chiamata 'Anni_dopo_10', che rappresenta l'età delle persone dopo 10 anni. Questo tipo di aggiunta è utile quando si devono eseguire analisi predittive o simulazioni.

È possibile aggiungere una colonna a un DataFrame utilizzando un'altra Serie o un array NumPy.

import numpy as np # Aggiunta di una colonna utilizzando un array NumPy bonus = np.array([1000, 1500, 1200, 1800]) df['Bonus'] = bonus print(df)

Rimuovere colonne da un DataFrame Pandas

A volte, è necessario rimuovere colonne da un DataFrame per ridurre il numero di variabili, migliorare la leggibilità dei dati o semplicemente eliminare dati non necessari.

Per rimuovere una o più colonne da un DataFrame, si utilizza il metodo drop di Pandas.

# Rimozione di una colonna df = df.drop('Salario', axis=1) print(df)

In questo esempio, abbiamo rimosso la colonna 'Salario' dal DataFrame. L'argomento axis=1 indica che stiamo rimuovendo una colonna (invece di una riga, per cui si utilizzerebbe axis=0).

È possibile rimuovere più colonne specificando i loro nomi in una lista.

# Rimozione di più colonne df = df.drop(['Età', 'Bonus'], axis=1) print(df)

Aggiungere righe a un DataFrame Pandas

Aggiungere righe a un DataFrame può essere utile quando si desidera espandere il dataset con nuovi record.

Uno dei metodi più comuni per aggiungere righe a un DataFrame è utilizzare il metodo append.

# Nuova riga da aggiungere nuova_riga = pd.Series({'Nome': 'Marco', 'Età': 35, 'Salario': 55000}) # Aggiunta della nuova riga df = df.append(nuova_riga, ignore_index=True)

Per aggiungere più righe contemporaneamente è possibile passare un altro DataFrame al metodo append.

# Nuovo DataFrame da aggiungere nuovi_dati = pd.DataFrame({     'Nome': ['Laura', 'Giorgio'],     'Età': [29, 40],     'Salario': [60000, 52000] }) # Aggiunta delle nuove righe df = df.append(nuovi_dati, ignore_index=True)

Rimuovere righe da un DataFrame

Un metodo comune per rimuovere righe è filtrare quelle che soddisfano una certa condizione.

# Rimozione di righe con condizione df = df[df['Età'] > 25

In questo caso, abbiamo rimosso tutte le righe in cui l'età è inferiore o uguale a 25.

È possibile rimuovere righe specifiche utilizzando il loro indice.

# Rimozione di una riga per indice df = df.drop(0)