Heim >Backend-Entwicklung >Python-Tutorial >Wie kann ich Pandas DataFrame-Zeilen basierend auf einer Werteliste filtern?
Filtern von Datenrahmenzeilen basierend auf Werten in einer Liste
Im Kontext von Python-Datenrahmen kann das Filtern von Zeilen basierend auf bestimmten Werten mit erreicht werden Die Pandas-Bibliothek. Diese Frage befasst sich mit der Anforderung, Zeilen zu filtern, in denen der Wert in einer bestimmten Spalte mit einem der Elemente in einer bereitgestellten Liste übereinstimmt.
Um dies zu erreichen, sollte die Methode isin() verwendet werden, im Gegensatz zu der versuchten Methode in Operator, der von Pandas nicht erkannt wird. Der Ausdruck rpt['STK_ID'].isin(stk_list) prüft, ob die Werte in der Spalte STK_ID in der Variablen stk_list vorhanden sind, und wählt effektiv die Zeilen aus, die diese Bedingung erfüllen.
Betrachten Sie beispielsweise einen Datenrahmen-rpt :
rpt <class 'pandas.core.frame.DataFrame'> MultiIndex: 47518 entries, ('000002', '20120331') to ('603366', '20091231') Data columns: STK_ID 47518 non-null values STK_Name 47518 non-null values RPT_Date 47518 non-null values sales 47518 non-null values
Um Zeilen zu filtern, in denen der STK_ID-Wert entweder „600809“ ist, '600141' oder '600329':
stk_list = ['600809', '600141', '600329'] rst = rpt[rpt['STK_ID'].isin(stk_list)]
Der erste Datenrahmen enthält jetzt nur die Zeilen, die den angegebenen Bestands-IDs aus der stk_list entsprechen.
Das obige ist der detaillierte Inhalt vonWie kann ich Pandas DataFrame-Zeilen basierend auf einer Werteliste filtern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!