首頁 >後端開發 >Python教學 >如何根據值列表過濾 Pandas DataFrame 行?

如何根據值列表過濾 Pandas DataFrame 行?

Barbara Streisand
Barbara Streisand原創
2024-12-04 02:25:12938瀏覽

How Can I Filter Pandas DataFrame Rows Based on a List of Values?

根據列表中的值過濾資料幀行

在Python資料幀的上下文中,可以使用以下方法來實現根據特定值過濾行熊貓圖書館。此問題解決了過濾特定列中的值與提供的清單中的任何元素相符的行的要求。

要實現此目的,應使用 isin() 方法,而不是嘗試pandas 無法辨識的運算符。 rpt['STK_ID'].isin(stk_list) 表達式檢查 STK_ID 欄位中的值是否存在於 stk_list 變數中,從而有效地選擇滿足此條件的行。

例如,考慮一個資料幀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

要過濾STK_ID 值為「600809」的行,「600141」或「600329」:

stk_list = ['600809', '600141', '600329']

rst = rpt[rpt['STK_ID'].isin(stk_list)]

第一個資料幀現在將只包含與stk_list 中指定股票ID對應的行。

以上是如何根據值列表過濾 Pandas DataFrame 行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn