【问题标题】:pandas - how to retrieve idices of minima at a deep level of DataFrame with MultiIndexpandas - 如何使用 MultiIndex 在 DataFrame 的深层检索最小值索引
【发布时间】:2020-06-22 15:36:13
【问题描述】:

这是我的带有 MultiIndex 的测试数据集 -

In [126]: sumdf
Out[126]:
                     sum
frame face lmark
0     NaN  NaN       0.0
30    0.0  1.0    1113.0
           2.0    1064.0
           3.0    1212.0
45    0.0  1.0    1084.0
           2.0    1133.0
           3.0    1181.0

我可以用-检索整个DataSet的最小值的索引-

In [127]: sumdf.idxmin()
Out[127]:
sum    (0, nan, nan)
dtype: object

但是如何确定lmark 级别的最小值的索引?

即。我想检索类似 -

(45, 0.0, 1.0) - minimum where lmark = 1.0
(30, 0.0, 2.0) - minimum where lmark = 2.0
(30, 0.0, 3.0) - minimum where lmark = 3.0

【问题讨论】:

    标签: pandas dataframe indexing multi-index


    【解决方案1】:

    IIUC,它是idxmingroupby

    df.groupby(level='lmark')['sum'].idxmin()
    

    输出:

    lmark
    1.0    (45, 0.0, 1.0)
    2.0    (30, 0.0, 2.0)
    3.0    (45, 0.0, 3.0)
    Name: sum, dtype: object
    

    【讨论】:

      猜你喜欢
      • 2016-10-18
      • 2012-10-02
      • 2015-07-19
      • 1970-01-01
      • 2018-07-28
      • 2019-03-18
      • 2013-11-14
      • 2017-03-02
      • 2013-07-29
      相关资源
      最近更新 更多