Ответ 1
Если то, что вы пытаетесь сделать, это выбрать только строки, в которых любой столбец соответствует этому условию, вы можете использовать DataFrame.any()
вместе с axis=1
(для группировки строк). Пример -
In [3]: df
Out[3]:
A B C
0 1 2 3
1 3 4 5
2 3 1 4
In [6]: df[(df <= 2).any(axis=1)]
Out[6]:
A B C
0 1 2 3
2 3 1 4
В качестве альтернативы, если вы пытаетесь фильтровать строки, где все столбцы удовлетворяют условию, используйте .all()
на месте .any()
. Пример all
-
In [8]: df = pd.DataFrame([[1,2,3],[3,4,5],[3,1,4],[1,2,1]],columns=['A','B','C'])
In [9]: df
Out[9]:
A B C
0 1 2 3
1 3 4 5
2 3 1 4
3 1 2 1
In [11]: df[(df <= 2).all(axis=1)]
Out[11]:
A B C
3 1 2 1