1. Basi del filtraggio dei dati in DataFrame
Perché il filtraggio è importante?
Come i filtri nella tua app preferita per i selfie, il filtraggio in pandas ci aiuta a concentrarci su ciò che è più importante. Possiamo escludere dati inutili e lasciare solo ciò che conta davvero. Questo è uno strumento fondamentale per l'analisi dei dati, soprattutto quando dobbiamo preparare report o lavorare con grandi set di dati.
Il nostro primo filtro
Iniziamo con un esempio semplice. Abbiamo un DataFrame
con
informazioni sulle vendite dei prodotti:
import pandas as pd
data = {
"Prodotto": ["Arance", "Banane", "Mele", "Arance", "Mele"],
"Quantità": [10, 5, 8, 7, 6],
"Prezzo": [3.5, 2.0, 4.0, 3.0, 4.5]
}
df = pd.DataFrame(data)
# Filtro dei prodotti per nome
filtered_df = df[df["Prodotto"] == "Arance"]
print(filtered_df)
Uso di condizioni
Possiamo combinare diverse condizioni, proprio come un multi-filtro! Per esempio, troviamo tutti i prodotti di cui sono stati venduti più di 6 pezzi a un prezzo non superiore a 3.5 unità:
# Combinare condizioni usando & (logico "e")
filtered_df = df[(df["Quantità"] > 6) & (df["Prezzo"] <= 3.5)]
print(filtered_df)
Punti importanti da ricordare
Non dimenticare che in pandas utilizziamo le parentesi quadrate per creare i filtri e quelle tonde per le condizioni. Non vorrai essere "quella persona" che dimentica queste parentesi, vero?
2. Ordinamento dei dati
Perché l'ordinamento è importante?
Ordinare i dati ci permette di vedere struttura e ordine nel caos (ammesso che nei dataset ci sia caos). Ad esempio, immagina di essere in una biblioteca dove i libri sono sparsi ovunque — un incubo! Ordinare aiuta a organizzare le informazioni, sia per analisi, report o semplicemente per cercare un determinato valore.
Ordinamento per una colonna
Mettiamo il nostro DataFrame
in ordine crescente di prezzo
dei prodotti:
# Ordinamento in base al prezzo in ordine crescente
sorted_df = df.sort_values(by="Prezzo")
print(sorted_df)
Ordinamento per più colonne
Immagina di dover ordinare i dati prima per quantità e, se le quantità sono uguali, per prezzo in ordine decrescente. Ecco come si fa:
# Ordinamento per quantità e prezzo
sorted_df = df.sort_values(by=["Quantità", "Prezzo"], ascending=[True, False])
print(sorted_df)
Particolarità dell'ordinamento
Fai attenzione al parametro ascending
. Ti permette di
specificare se vuoi ordinare i dati in ordine crescente o decrescente.
È utile se vuoi "dominare" i tuoi dati con sicurezza.
3. Applicazione pratica
Esercizio pratico
Ora è il momento di mettere in pratica le nostre conoscenze! Supponiamo che tu sia un analista in un'azienda che vende gadget. Il tuo compito è trovare tutti i modelli di telefoni che sono stati venduti in quantità superiori a 100 unità e ordinarli in base al profitto decrescente.
# Dati sulle vendite dei telefoni
data = {
"Modello": ["Phone X", "Phone Y", "Phone Z", "Phone X", "Phone Y"],
"Vendite": [120, 150, 90, 130, 80],
"Profitto": [200, 180, 220, 210, 190]
}
df = pd.DataFrame(data)
# Filtrare i modelli con vendite superiori a 100
filtered_df = df[df["Vendite"] > 100]
# Ordinamento per profitto decrescente
sorted_df = filtered_df.sort_values(by="Profitto", ascending=False)
print(sorted_df)
Analisi e discussione
Usa una combinazione di filtri e ordinamenti per ottenere i dati che sono davvero interessanti e importanti per te o per il tuo report. Come qualsiasi altro strumento, il filtraggio e l'ordinamento diventano più potenti con la pratica. E non dimenticare, dati ben formattati sono non solo una benedizione per l'analista, ma anche il suo più grande orgoglio.
Errori tipici
Alcuni principianti talvolta dimenticano di utilizzare le parentesi tonde
nelle condizioni di filtraggio, causando errori. È un po' come dimenticare
di mettere il coperchio su una pentola — tutto può andare fuori controllo.
Un altro errore comune è specificare l'ordine sbagliato nei campi di
ordinamento multipli. Assicurati di utilizzare correttamente
ascending
, in modo da non capovolgere tutto.
Applicazioni pratiche
Nella pratica, il filtraggio e l'ordinamento sono strumenti indispensabili per qualsiasi analista di dati. Aiutano a ottenere rapidamente i dati necessari da set complessi e a prepararli per i report. Nel mondo reale, sono utilizzati ovunque: dalla fintech alla ricerca medica. Ad esempio, le banche possono filtrare le transazioni per identificare attività sospette, e i ricercatori ordinano i dati degli esperimenti per rilevare dipendenze nascoste. Senza contare che conoscere questi strumenti può essere un alleato prezioso nei colloqui di lavoro.
4. Risorse esterne per l'apprendimento
Per chi vuole approfondire l'argomento, consiglio di dare un'occhiata alla documentazione ufficiale di pandas, che è una fonte eccellente per comprendere tutte le capacità di questa libreria. Lì troverai molti esempi e spiegazioni che ti aiuteranno a padroneggiare questo strumento a livello professionale.
GO TO FULL VERSION