如果列中的值与特定列表匹配,则过滤 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中文网其他相关文章!