ホームページ >バックエンド開発 >Python チュートリアル >特定の列の値のリストに基づいて Pandas DataFrame 行をフィルターする方法
列の値が特定のリストと一致する場合、DataFrame 行をフィルタリング
パンダの 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 データフレームにフィルター処理されます:
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 中国語 Web サイトの他の関連記事を参照してください。