ホームページ >バックエンド開発 >Python チュートリアル >複数の複雑な基準に基づいてパンダデータフレームからデータを選択する方法?
pandas.DataFrame からの複雑な基準による選択
次の DataFrame について考えます。
import pandas as pd from random import randint df = pd.DataFrame({'A': [randint(1, 9) for x in range(10)], 'B': [randint(1, 9)*10 for x in range(10)], 'C': [randint(1, 9)*100 for x in range(10)]})
値を選択するには「B」の対応する値が 50 より大きい「A」、および「C」が 900 に等しくない場合は、Pandas のメソッドとイディオムを利用できます。
まず、列操作を適用して Boolean Series オブジェクトを取得します。
df["B"] > 50 (df["B"] > 50) & (df["C"] != 900)
これらの Series は、関心のある条件を表します。次に、次の条件を使用してデータフレームにインデックスを付けてデータをフィルタリングできます。
df["A"][(df["B"] > 50) & (df["C"] != 900)]
または、次の条件を使用することもできます。 .loc を使用して同じ結果を実現します。
df.loc[(df["B"] > 50) & (df["C"] != 900), "A"]
このメソッドは、より詳細な制御を提供し、よりカスタマイズ可能なインデックス作成エクスペリエンスを可能にします。
結果の DataFrame には、次のような 'A' の値のみが含まれます。指定された基準を満たします。
以上が複数の複雑な基準に基づいてパンダデータフレームからデータを選択する方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。