Auswahl mit komplexen Kriterien aus pandas.DataFrame
Berücksichtigen Sie den folgenden DataFrame:
import pandas as pd from random import randint df = pd.DataFrame({'A': [randint(1, 9) for x in range(10)], 'B': [randint(1, 9)*10 for x in range(10)], 'C': [randint(1, 9)*100 for x in range(10)]})
Zur Auswahl von Werten aus „A“, für den die entsprechenden Werte für „B“ größer als 50 und „C“ ungleich 900 sind, können wir verwenden Methoden und Redewendungen von Pandas.
Wir beginnen mit der Anwendung von Spaltenoperationen, um Objekte der booleschen Reihe zu erhalten:
df["B"] > 50 (df["B"] > 50) & (df["C"] != 900)
Diese Reihen stellen die Bedingungen dar, an denen wir interessiert sind. Anschließend können wir im DataFrame indizieren Verwenden dieser Bedingungen zum Filtern der Daten:
df["A"][(df["B"] > 50) & (df["C"] != 900)]
Alternativ können wir .loc verwenden, um dasselbe zu erreichen Ergebnis:
df.loc[(df["B"] > 50) & (df["C"] != 900), "A"]
Diese Methode bietet mehr Kontrolle und ermöglicht eine anpassbarere Indizierungserfahrung.
Der resultierende DataFrame enthält nur die Werte von „A“, die die angegebenen Kriterien erfüllen.
Das obige ist der detaillierte Inhalt vonWie wähle ich Daten aus einem Pandas-DataFrame basierend auf mehreren komplexen Kriterien aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!