keith
Me gustaría el operador OR lógico por elementos. Sé que “o” en sí mismo no es lo que estoy buscando.
Soy consciente de que Y corresponde a &
y no, ~
. Pero ¿qué pasa con O?
deinonychusaurio
El operador correspondiente es |
:
df[(df < 3) | (df == 5)]
verificaría por elementos si el valor es menor que 3 o igual a 5.
Si necesita una función para hacer esto, tenemos np.logical_or
. Para dos condiciones, puede utilizar
df[np.logical_or(df<3, df==5)]
O, para múltiples condiciones, use el logical_or.reduce
,
df[np.logical_or.reduce([df<3, df==5])]
Dado que las condiciones se especifican como argumentos individuales, la agrupación de paréntesis no es necesaria.
Puede encontrar más información sobre operaciones lógicas con pandas aquí.
-
Los corchetes redondos son importante
– Gerardo
8 de agosto de 2016 a las 15:22
-
|
ynp.logical_or
se comportan de manera diferente en presencia de NaN. Consulte stackoverflow.com/q/37131462/2596586– franco
14 de noviembre de 2019 a las 0:18
-
Solo un comentario:
or
no está trabajando aquí. Solamente|
obras.– S.Wu
15 de marzo de 2020 a las 0:17
Para tomar el elemento lógico OR de dos Series a
y b
solo haz
a | b