要素ごとの論理OR演算子が必要です。 「または」自体は私が探しているものではないことを知っています。
ANDは&
に対応し、NOT、~
に対応することを認識しています。しかし、ORはどうですか?
対応する演算子は|
です。
df[(df < 3) | (df == 5)]
値が3未満または5に等しいかどうかを要素ごとにチェックします。
これを行う関数が必要な場合、 np.logical_or
があります。 2つの条件に対して、次を使用できます。
df[np.logical_or(df<3, df==5)]
または、複数の条件に対してlogical_or.reduce
を使用し、
df[np.logical_or.reduce([df<3, df==5])]
条件は個別の引数として指定されるため、括弧のグループ化は必要ありません。
pandasを使用した論理演算の詳細については、 here を参照してください。
2つのシリーズa
およびb
の要素ごとの論理ORを取得するには
a | b