Pandas シリーズのあいまいな真理値: OR 条件によるフィルタリング
次の場合に「シリーズの真理値があいまいです」というエラーが発生します。示されているように、OR 条件を使用して DataFrame をフィルタリングしようとしています以下:
df = df[(df['col'] < -0.25) or (df['col'] > 0.25)]
このエラーは、pandas シリーズの真理値の曖昧な性質に起因します。これを解決するには、代わりに、パンダの要素ごとのブール演算用に特別に設計された「ビットごと」演算子を使用する必要があります。
ビットごとの OR および AND 演算子
ビットごとの OR 演算子 |およびビット単位の AND 演算子 & は、今回の目的に適しています。これらは系列に対して要素ごとに演算し、各要素が元の系列内の対応する要素に対する OR または AND 演算の結果を表すブール系列を返します。
この場合、フィルター式を書き換えることができます。次のようにビットごとの OR 演算子を使用します:
df = df[(df['col'] < -0.25) | (df['col'] > 0.25)]
代替メソッド
例外メッセージは、シリーズから真理値を取得するための代替メソッドも提案します。
以上がPandas フィルタリングの「シリーズの真理値があいまいです」エラーを解決する方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。