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

如何根据特定列中的值列表过滤 Pandas DataFrame 行?

Barbara Streisand
发布: 2024-12-26 04:26:12
原创
116 人浏览过

How to Filter Pandas DataFrame Rows Based on a List of Values in a Specific Column?

如果列中的值与特定列表匹配,则过滤 DataFrame 行

pandas DataFrame rpt 有多行与股票相关的数据。要检索股票 ID 与特定值列表匹配的行,应使用 isin 方法。让我们探索如何使用值列表过滤 DataFrame 行:

import pandas as pd

# Create a sample DataFrame
rpt = pd.DataFrame({'STK_ID': ['000002', '600809', '600141', '600329', '603366'],
                   'RPT_Date': ['20120331', '20120331', '20120331', '20120331', '20091231'],
                   'sales': [100, 200, 300, 400, 500]})

# Stock IDs to filter for
stk_list = ['600809', '600141', '600329']

# Filter rows using isin
filtered_rows = rpt[rpt['STK_ID'].isin(stk_list)]
登录后复制

isin 方法检查指定列中的值是否存在于提供的列表中。具有匹配ID的行被过滤到filtered_rows DataFrame中:

print(filtered_rows)

   STK_ID  RPT_Date  sales
0  600809  20120331    200
1  600141  20120331    300
2  600329  20120331    400
登录后复制

这种过滤方法避免了使用in的常见错误,不支持检查值是否在列表中。通过利用 isin,可以有效地从 DataFrame 中检索所需的行。

以上是如何根据特定列中的值列表过滤 Pandas DataFrame 行?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板