首页 >后端开发 >Python教程 >如何根据值列表过滤 Pandas DataFrame 行?

如何根据值列表过滤 Pandas DataFrame 行?

Barbara Streisand
Barbara Streisand原创
2024-12-04 02:25:12896浏览

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