Python 如何对多个条件使用基本索引

Python 如何对多个条件使用基本索引,python,pandas,indexing,Python,Pandas,Indexing,如你所知,熊猫的基本索引非常容易 import pandas as pd df = pd.DataFrame({'a':[1,2,3,4]}) 假设我想要'a'大于2的每一行 df[df['a'] > 2] 好的,但是现在我如何使用多个条件呢?让我们尝试查找“a”在范围(2,4)内的每一行 df[df['a']在(2,4)范围内] df[1

如你所知,熊猫的基本索引非常容易

import pandas as pd
df = pd.DataFrame({'a':[1,2,3,4]})
假设我想要'a'大于2的每一行

df[df['a'] > 2]
好的,但是现在我如何使用多个条件呢?让我们尝试查找“a”在范围(2,4)内的每一行

df[df['a']在(2,4)范围内]
df[11和df['a']1][df.a<4]

您可以在括号中分隔多个条件,将它们分开
&
(和)或
|
(或)。以下是一个例子:

df[(df.a > 1) & (df.a < 4)]
或者,您也可以使用
between
方法:

df[df.a.between(1,4, inclusive=False)]
输出

   a
1  2
2  3

补充了一个答案。让我知道它是否对你有效。你找到了解决方案真是太好了。但是请注意@Grayrigel的解决方案更有效,尤其是使用between()的解决方案。
df[df.a.gt(1) & df.a.lt(4)]
df[df.a.between(1,4, inclusive=False)]
   a
1  2
2  3