operatori condizioni
- & → e
- | → o
esempio: filtra righe Città Roma
df = df[df['Città'] == "Roma"]
esempio: filtra righe con valore > 50
df = df[df['Colonna'] > 50]
df = df[(df['Colonna1'] > 50) & (df['Colonna2'] > 50)] con due colonne condizioni
esempio: filtro Prodotto B
Dataframe iniziale
il metodo filtra le righe con il Prodotto B utilizzando un metodo che analizza il testo contento .str.contains()
df[df["Prodotto"].str.contains("Prodotto B")]
esempio: filtra righe per data
# filtro data > 1/1/2020
df = df[df['Colonna'] > pd.to_datetime('1/1/2020')]
# filtro data dopo 1/1/2020
df = df[df['Colonna'] < pd.to_datetime('1/1/2020')]
# filtro data tra 1/1/2020 e 1/1/2021
df = df[(df['Colonna'] > pd.to_datetime('1/1/2020')) & (df['Colonna'] < pd.to_datetime('1/1/2021'))]
esempio: filtra righe in una lista
# filtro con valori nella lista
df = df[df['Column1'].isin(['value1', 'value2', 'value3'])]
# filtro con valori non nella lista
df = df[~df['Column1'].isin(['value1', 'value2', 'value3'])]
esempio: filtra per il massio del fatturato ricreando il dataframe solo con Prodotto e Fatturato
df = df[["Prodotto","Fatturato"]][df.Fatturato == df["Fatturato"].max()]
esempio: rimuovo da un dataframe tutti i testi che non sono numeri
df = pd.to_numeric(df, errors='coerce').dropna()
(vedi Python - funzioni / metodi - stringhe - conversione)