Filtraggio delle righe nei dataframe Pandas
Pandas è una potente libreria in Python per la manipolazione e l'analisi dei dati. Un'attività comune è selezionare le righe da un DataFrame in base ai valori delle colonne, simile alla tabella SELECT * FROM di SQL WHERE nome_colonna = valore_alcuno.
Questa guida ti guiderà attraverso vari metodi per raggiungere questo obiettivo in Panda, semplificando il filtraggio dei dati in modo efficiente. Che tu sia un principiante o un utente esperto, questi suggerimenti miglioreranno le tue capacità di gestione dei dati.
Comando | Descrizione |
---|---|
pd.DataFrame(data) | Crea un DataFrame da un dizionario di dati. |
df[column_name] | Accede a una colonna nel DataFrame in base al nome. |
df[condition] | Filtra DataFrame in base a una condizione applicata a una colonna. |
print(selected_rows) | Stampa il DataFrame o un suo sottoinsieme sulla console. |
df[df['Age'] >df[df['Age'] > 25] | Seleziona le righe in cui i valori della colonna "Età" sono maggiori di 25. |
df[df['City'] == 'Chicago'] | Seleziona le righe in cui i valori della colonna "Città" sono uguali a "Chicago". |
Comprensione della selezione della riga DataFrame in Panda
Gli script forniti dimostrano come selezionare righe da un DataFrame in base ai valori delle colonne utilizzando la libreria Pandas in Python. Il primo script inizia importando la libreria Pandas con il file comando. Quindi crea un DataFrame di esempio utilizzando un dizionario di dati, che viene convertito in un DataFrame con il file comando. Lo script illustra quindi due metodi per la selezione delle righe: selezionando le righe in cui il valore della colonna "Età" è maggiore di 25 utilizzando e selezionando le righe in cui il valore della colonna "Città" è "Chicago" utilizzando df[df['City'] == 'Chicago']. Questi DataFrames filtrati vengono stampati utilizzando il file funzione per visualizzare le righe selezionate.
Il secondo script segue una struttura simile ma utilizza dati e criteri di selezione diversi. Crea un DataFrame con informazioni sul prodotto, incluse le colonne "Prodotto", "Prezzo" e "Stock". Le righe vengono selezionate in cui il "Prezzo" è inferiore o uguale a 200 con
Tecniche avanzate per la selezione di righe DataFrame in Panda
Oltre al filtraggio di base utilizzando l'indicizzazione booleana, Pandas offre tecniche avanzate per selezionare le righe in base ai valori delle colonne. Un metodo potente è utilizzare il file funzione, che permette di filtrare le righe con un'espressione di query, rendendo la sintassi più pulita e spesso più intuitiva. Ad esempio, invece di utilizzare , tu puoi scrivere . Questo metodo è particolarmente utile quando si gestiscono condizioni più complesse o quando i nomi delle colonne contengono spazi. Inoltre, il isin() La funzione è utile quando si desidera filtrare le righe in base a un elenco di valori. Ad esempio, per selezionare le righe in cui il valore della colonna "Città" è "Chicago" o "New York", puoi utilizzare .
Un'altra tecnica prevede il E indicizzatori. IL l'indicizzatore è basato su etichette e consente di selezionare le righe in base alle etichette delle righe e ai nomi delle colonne, mentre iloc è basato sulla posizione dei numeri interi e consente la selezione in base ai numeri di riga e colonna. Questa flessibilità è particolarmente utile per selezionare le righe in base a una condizione applicata a una colonna diversa. Ad esempio, restituirà i nomi delle persone di età superiore a 25 anni. Questi metodi espandono il tuo kit di strumenti per gestire e analizzare in modo efficiente i dati in Panda, offrendo un codice più leggibile e gestibile.
- Come posso selezionare le righe in base a più condizioni?
- Puoi usare il funzione o combina condizioni con operatori logici come E . Per esempio, df[(df['Age'] > 25) & (df['City'] == 'Chicago')].
- Posso filtrare le righe in base a un elenco di valori?
- Sì, usa il funzione. Ad esempio, .
- Qual è la differenza tra E ?
- è basato sull'etichetta, mentre è basato sulla posizione intera. Utilizzo con etichette di riga/colonna e iloc con indici di riga/colonna.
- Come posso selezionare colonne specifiche durante il filtraggio delle righe?
- Puoi usare . Per esempio, .
- Come gestisco i valori mancanti durante la selezione delle righe?
- Usa il funzione per rimuovere righe con valori mancanti, o per sostituirli con un valore specificato.
- Posso utilizzare le espressioni regolari per filtrare le righe?
- Sì, il funzionare con il Il parametro consente di filtrare le righe in base ai modelli regex. Per esempio, .
- Come filtrare le righe in base all'indice?
- Puoi usare con il nome dell'indice. Per esempio, .
- Cosa succede se i nomi delle mie colonne contengono spazi o caratteri speciali?
- Usa il funzione che può gestire tali nomi di colonna con apici inversi. Per esempio, .
Considerazioni finali sulle tecniche di selezione delle righe DataFrame
La selezione di righe da un DataFrame in base ai valori delle colonne in Panda è un'abilità cruciale per la manipolazione dei dati. I vari metodi discussi, inclusa l'indicizzazione booleana, , e indicizzazione basata sull'etichetta e sulla posizione intera con E iloc, forniscono strumenti potenti per filtrare i dati in modo efficiente. La padronanza di queste tecniche consente una migliore analisi dei dati e un codice più pulito e facilmente gestibile.