【问题标题】:Filtering in pandas by condition按条件过滤熊猫
【发布时间】:2018-08-09 09:16:34
【问题描述】:

我有一个如下所示的数据框示例。第一行是标题。

a  b   c   d   e
x  1   10  4   asd
y  3   12  5   aqe
z  4   14  6   rty
t  6   12  4   abd
v  7   4   8   yul

我想通过按最小值过滤 d 列来查找列成员。我尝试对其进行排序并选择 0. 元素,但列可能有 2 个最小值,就像示例中一样。

输出应该是“x”和“t”

有什么建议吗?

【问题讨论】:

    标签: python pandas filter conditional-statements minimum


    【解决方案1】:

    使用boolean indexing 和loc 选择列a,最后转换为list:

    L = df.loc[df['d'] == df['d'].min(), 'a'].tolist()
    print (L)
    ['x', 't']
    

    详情:

    print (df['d'] == df['d'].min())
    0     True
    1    False
    2    False
    3     True
    4    False
    Name: d, dtype: bool
    

    【讨论】:

      猜你喜欢
      • 2017-10-03
      • 1970-01-01
      • 2020-09-04
      • 2017-11-20
      • 1970-01-01
      • 2020-01-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多