Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

171
Vistas
Pandas rebanando/seleccionando con múltiples condiciones con o declaración

Cuando selecciono encadenando diferentes condiciones con "Y", la selección funciona bien. Cuando selecciono encadenando condiciones con "O" la selección arroja un error.

 >>> import pandas as pd >>> import numpy as np >>> df = pd.DataFrame([[1,4,3],[2,3,5],[4,5,6],[3,2,5]], ... columns=['a', 'b', 'c']) >>> df abc 0 1 4 3 1 2 3 5 2 4 5 6 3 3 2 5 >>> df.loc[(df.a != 1) & (df.b < 5)] abc 1 2 3 5 3 3 2 5 >>> df.loc[(df.a != 1) or (df.b < 5)] Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/usr/lib/python3/dist-packages/pandas/core/generic.py", line 731, in __nonzero__ .format(self.__class__.__name__)) ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().

Espero que devuelva el marco de datos completo ya que todas las filas cumplen esta condición.

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Lo importante a tener en cuenta es que & no es idéntico a and ; son cosas diferentes por lo que el "o" equivalente a & es |

Normalmente tanto & como | son operadores lógicos bit a bit en lugar de los operadores "lógicos" de Python.

En pandas, estos operadores están sobrecargados para la operación en Series .

 In [1]: import pandas as pd In [2]: import numpy as np In [3]: df = pd.DataFrame([[1,4,3],[2,3,5],[4,5,6],[3,2,5]], columns=['a', 'b', ...: 'c']) In [4]: df Out[4]: abc 0 1 4 3 1 2 3 5 2 4 5 6 3 3 2 5 In [5]: df.loc[(df.a != 1) & (df.b < 5)] Out[5]: abc 1 2 3 5 3 3 2 5 In [6]: df.loc[(df.a != 1) | (df.b < 5)] Out[6]: abc 0 1 4 3 1 2 3 5 2 4 5 6 3 3 2 5
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda