如何在满足数据帧条件的行中提取某些值?

时间:2020-01-04 05:15:06

标签: python pandas dataframe

我有一个看起来像这样的DataFrame-

enter image description here

现在,如何提取A行中所有值大于2的元素?

在上述情况下,值为2.706850

我做了这样的事情-

df.loc['A']>2

但是我得到了一个包含布尔值的序列,像这样-

enter image description here

我应该怎么做才能获得2.706850作为输出?

1 个答案:

答案 0 :(得分:2)

推荐的解决方案

您可以使用条件表达式和序列标签本身来索引数据框:

df.loc[df.loc['A'] > 2, 'A']

旧答案,不推荐

避免使用此方法,因为它鼓励链式分配。查看以下answer了解更多详细信息

您只需要按如下所示使用布尔掩码重新索引该系列:

>>> df.loc['A'][df.loc['A'] > 2]
F    2.706850
Name: A, dtype: float64
相关问题