从pandas Dataframe中提取特定列中具有特定值的所有行

use*_*734 7 python dataframe pandas

我对Python/Pandas比较陌生,并且正在努力从pd.Dataframe中提取正确的数据.我实际拥有的是一个包含3列的Dataframe:

data =

Position Letter Value
1        a      TRUE
2        f      FALSE
3        c      TRUE
4        d      TRUE
5        k      FALSE
Run Code Online (Sandbox Code Playgroud)

我想要做的是将所有TRUE行放入一个新的Dataframe中,这样答案就是:

answer = 

Position Letter Value
1        a      TRUE
3        c      TRUE
4        d      TRUE
Run Code Online (Sandbox Code Playgroud)

我知道您可以使用访问特定列

data['Value']
Run Code Online (Sandbox Code Playgroud)

但是如何提取所有TRUE行?

感谢您的帮助和建议,

亚历克斯

And*_*den 14

您可以测试哪些值为True:

In [11]: data['Value'] == True
Out[11]:
0     True
1    False
2     True
3     True
4    False
Name: Value, dtype: bool
Run Code Online (Sandbox Code Playgroud)

然后使用花哨的索引来拉出这些行:

In [12]: data[data['Value'] == True]
Out[12]:
   Position Letter Value
0         1      a  True
2         3      c  True
3         4      d  True
Run Code Online (Sandbox Code Playgroud)

*注意:如果值实际上是字符串'TRUE'并且'FALSE'(它们可能不应该是!)则使用:

data['Value'] == 'TRUE'
Run Code Online (Sandbox Code Playgroud)