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

时间:2013-07-02 11:17:57

标签: python pandas dataframe

我对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

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

answer = 

Position Letter Value
1        a      TRUE
3        c      TRUE
4        d      TRUE

我知道您可以使用

访问特定列
data['Value']

但如何提取所有TRUE行?

感谢您提供任何帮助和建议,

亚历

1 个答案:

答案 0 :(得分:14)

您可以测试哪些值为True:

In [11]: data['Value'] == True
Out[11]:
0     True
1    False
2     True
3     True
4    False
Name: Value, dtype: bool

然后使用花式索引来提取这些行:

In [12]: data[data['Value'] == True]
Out[12]:
   Position Letter Value
0         1      a  True
2         3      c  True
3         4      d  True

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

data['Value'] == 'TRUE'