Pandas Dataframe - find the row with minimum value based on two columns but greater than 0

后端 未结 3 1709
南方客
南方客 2021-01-22 16:31

I have a dataframe with 3 columns: x, y, time. There are a few thousand rows.

What I want to do is retrieve the row with the minimum time but I would like that the minim

3条回答
  •  盖世英雄少女心
    2021-01-22 16:58

    You don't need groupby at all. Here's an option with mask/where + loc + idxmin;

    df.loc[[df.time.mask(df.time.eq(0)).idxmin()]]
    

    Or,

    df.loc[[df.time.where(df.time.ne(0)).idxmin()]]
    

         x   y  time
    3  240  19   9.7
    

提交回复
热议问题