Daten filtern
Lektion 9 von 19 im Kurs Pandas Analytics von Coddy.
Pandas ermöglicht es uns, Zeilen basierend auf einer bestimmten Bedingung zu filtern. Um Zeilen zu filtern, schreiben Sie die Bedingung in Klammern:
filtered_df = df[df["number_column"] > 5]
filtered_df = df[df["string_column"] == "String Match"]Um mehrere Bedingungen zu kombinieren, verwenden Sie das Schlüsselwort & (und) sowie das Schlüsselwort | (oder). Jede Bedingung muss in Klammern () stehen:
filtered_df = df[(df['number_column'] >= 3) & (df['string_column'] == 'String Match')]Das Schlüsselwort für not (nicht) ist ~ (nicht größer als 5):
filtered_df = df[~df["number_column"] > 5]Um alle nicht leeren Werte aus einer bestimmten Spalte abzurufen:
filtered_df = df[~df["column"].isna()]Um zu prüfen, ob ein Wert in einem Array enthalten ist:
filtered_df = df[df['column'].isin(['value1', 'value2', 'value3'])]
Aufgabe
EinfachDie CSV-Datei stats.csv enthält Informationen über Statistiken.
Hier sind die ersten 5 Zeilen der Datei:
ID,COUNTRY,COLOR,SKILL,SKILL_POINTS,UTILIZATION,IS_VALID,CATEGORY
1,France,Signal violet,marksmanship,14,0.1924,1,SHOW
2,Solomon Islands,Pearl violet,crocheting,4,0.6108,1,TREE
3,Germany,Bottle green,calligraphy,12,0.88646,0,SHOW
4,Mauritania,Fawn brown,paper cutting,9,0.058,1,JAPERufen Sie nur die Zeilen ab, die den folgenden Kriterien entsprechen:
SKILL_POINTSist größer als7.UTILIZATIONist kleiner oder gleich0.7oder größer als0.95.IS_VALIDist gleich eins.CATEGORYist einer der folgenden Werte:JAPE,PLQRundGHUP
Speichern Sie das Endergebnis in der Variable df.
Probier es selbst
# pandas as pd ist bereits importiert
df = pd.read_csv("./stats.csv")
# Schreibe deinen Code unten
Alle Lektionen in Pandas Analytics
2Arbeiten mit dem DataFrame
DataFrames verstehenDatenzugriffDatenbereinigung - Fehlende DatenDatenbereinigung - Weitere Tools3Datenmanipulation mit Pandas
Ergebnis zurückgebenDaten filternHinzufügen & LöschenDaten ändernStrings modifizierenEigene Anpassungen