Introduzione al Progetto
In questa lezione esploreremo in modo approfondito come utilizzare Pandas per manipolare, analizzare e gestire i dati in modo efficace. Impareremo a filtrare, ordinare e trasformare i dataset, sfruttando alcune delle funzionalità più potenti di questa libreria.
Sommario
Soluzioni esercizi lezione 08
#esercizio 1
import numpy as np
array = np.arange(1, 11)
print(np.sum(array)) # Output: 55
#esercizio 2
import pandas as pd
dati = {
"Nome": ["Anna", "Luca", "Marco"],
"Età": [22, 35, 40],
"Città": ["Roma", "Milano", "Napoli"]
}
df = pd.DataFrame(dati)
filtrato = df[df["Età"] > 30]
print(filtrato)
#esercizio 3
df = pd.read_csv("dataset.csv")
print(df.head()) # Prime righe del dataset
print(df.describe()) # Statistiche descrittive
Obiettivi della lezione 09
- Apprendere come esplorare dataset con Pandas.
- Utilizzare metodi per filtrare, ordinare e aggregare i dati.
- Eseguire operazioni di manipolazione sui DataFrame, come aggiungere, modificare o rimuovere colonne.
- Esportare e importare file (CSV, Excel) con Pandas.
Esplorare un DataFrame
Per questa lezione useremo un dataset di esempio che rappresenta un elenco di dipendenti con informazioni su nome, età, stipendio e dipartimento. Puoi scaricare o creare un file CSV come il seguente:
“dipendenti.csv“
nome,età,stipendio,dipartimento
Alice,25,3000,IT
Bob,30,4000,HR
Charlie,35,5000,Finance
David,28,3200,IT
Eva,40,6000,Finance
Importare e leggere un file CSV
import pandas as pd
df = pd.read_csv("dipendenti.csv")
print(df)
Esplorare i dati
#Prime e ultime righe del dataset
print(df.head()) # Mostra le prime 5 righe
print(df.tail(3)) # Mostra le ultime 3 righe
#Informazioni sul dataset
print(df.info()) # Mostra informazioni sul tipo di dati e numero di valori non nulli
#Statistiche descrittive
print(df.describe()) # Statistiche come media, deviazione standard, ecc.
Filtrare i Dati
Filtrare righe in base a una condizione
# Filtra i dipendenti con stipendio maggiore di 4000
filtro = df[df["stipendio"] > 4000]
print(filtro)
Filtri complessi con operatori logici
#AND
filtro = df[(df["stipendio"] > 4000) & (df["dipartimento"] == "Finance")]
print(filtro)
#OR
filtro = df[(df["età"] < 30) | (df["dipartimento"] == "HR")]
print(filtro)
Ordinare i Dati
# Ordinare in base a una colonna
# Ordina per stipendio in ordine crescente
ordinato = df.sort_values(by="stipendio")
print(ordinato)
# Ordinare in ordine decrescente
# Ordina per età in ordine decrescente
ordinato = df.sort_values(by="età", ascending=False)
print(ordinato)
# Ordinare in base a più colonne
# Ordina per dipartimento e poi per stipendio
ordinato = df.sort_values(by=["dipartimento", "stipendio"], ascending=[True, False])
print(ordinato)
Modificare il DataFrame
# Aggiungere colonne
# Aggiungi una colonna con lo stipendio annuale
df["stipendio_annuo"] = df["stipendio"] * 12
print(df)
# Modificare valori
# Aumenta del 10% lo stipendio di chi lavora nel dipartimento IT
df.loc[df["dipartimento"] == "IT", "stipendio"] *= 1.1
print(df)
# Rimuovere colonne
# Rimuovi la colonna 'stipendio_annuo'
df = df.drop("stipendio_annuo", axis=1)
print(df)
# Rimuovere righe
# Rimuovi i dipendenti con età maggiore di 35
df = df[df["età"] <= 35]
print(df)
Raggruppare e Aggregare Dati
# Raggruppare per colonna
# Calcola la media dello stipendio per ogni dipartimento
media_stipendi = df.groupby("dipartimento")["stipendio"].mean()
print(media_stipendi)
# Calcolare più statistiche
# Calcola media e somma dello stipendio per dipartimento
statistiche = df.groupby("dipartimento")["stipendio"].agg(["mean", "sum"])
print(statistiche)
#Contare righe per gruppo
# Conta quanti dipendenti ci sono in ogni dipartimento
conteggio = df.groupby("dipartimento").size()
print(conteggio)
Esportare i Dati
# Esportare in .csv
df.to_csv("dipendenti_modificati.csv", index=False)
# Esportare in Excel
df.to_excel("dipendenti_modificati.xlsx", index=False)
Esercizi pratici
- Esercizio 1: Filtrare i dati
Filtra tutti i dipendenti con uno stipendio superiore a 3500 e salva i risultati in un nuovo file CSV. - Esercizio 2: Statistiche sui dipartimenti
Calcola lo stipendio medio, minimo e massimo per ciascun dipartimento. - Esercizio 3: Aumentare gli stipendi
Aumenta del 15% lo stipendio di tutti i dipendenti nel dipartimento IT e salva i risultati in un file Excel.
Conclusioni e anticipazioni
In questa lezione abbiamo:
- Imparato a filtrare, ordinare e modificare i dati con Pandas.
- Utilizzato metodi per raggruppare e calcolare statistiche sui dati.
- Appreso come esportare i risultati in file CSV ed Excel.
Nella prossima lezione, concluderemo il nostro corso introducendo la visualizzazione dei dati con Matplotlib, creando grafici utili per analisi visive.
Homepage del Corso Introduttivo
Sei curioso di scoprire il mondo della programmazione?
Con il mio corso gratuito di Python potrai infatti scoprire gli aspetti del linguaggio.
Ogni lezione è spiegata in modo chiaro e pratico.
Inoltre, grazie a esercizi e materiali di supporto, potrai quindi mettere subito in pratica ciò che impari.
