如何在python pandas中使用带有bool的查询功能?

IDo*_*ing 5 python dataframe pandas

我正在尝试做类似的事情

df.query("'column' == 'a'").count()
Run Code Online (Sandbox Code Playgroud)

但与

df.query("'column' == False").count()
Run Code Online (Sandbox Code Playgroud)

使用querybool 列的正确方法是什么?

tim*_*geb 5

很简单'column == False'

>>> df = pd.DataFrame([[False, 1], [True, 2], [False, 3]], columns=['column', 'another_column'])                       
>>> df                                                                                                                 
   column  another_column
0   False               1
1    True               2
2   False               3
>>> df.query('column == False')                                                                                        
   column  another_column
0   False               1
2   False               3
>>> df.query('column == False').count()                                                                                
column            2
another_column    2
dtype: int64
Run Code Online (Sandbox Code Playgroud)

就我个人而言,我更喜欢布尔索引(如果适用于您的情况)。

>>> df[~df['column']]                                                                                                  
   column  another_column
0   False               1
2   False               3
>>> df[~df['column']].count()                                                                                          
column            2
another_column    2
dtype: int64
Run Code Online (Sandbox Code Playgroud)