Cómo seleccionar filas en un DataFrame entre dos valores

Resuelto user131983 asked hace 9 años • 7 respuestas

Estoy intentando modificar un DataFrame dfpara que solo contenga filas cuyos valores en la columna closing_priceestén entre 99 y 101 y estoy intentando hacer esto con el siguiente código.

Sin embargo, me sale el error

ValueError: el valor de verdad de una serie es ambiguo. Utilice a.empty, a.bool(), a.item(), a.any() o a.all()

y me pregunto si hay alguna manera de hacer esto sin usar bucles.

df = df[99 <= df['closing_price'] <= 101]
user131983 avatar Jul 25 '15 01:07 user131983
Aceptado

Considere la serie entre :

df = df[df['closing_price'].between(99, 101)]
Parfait avatar Nov 05 '2016 20:11 Parfait

Debe utilizar ()para agrupar su vector booleano para eliminar la ambigüedad.

df = df[(df['closing_price'] >= 99) & (df['closing_price'] <= 101)]
Jianxun Li avatar Jul 24 '2015 19:07 Jianxun Li