pandas-如何使用多索引在数据帧的深层检索极小值ID
这是我的多索引测试数据集-pandas-如何使用多索引在数据帧的深层检索极小值ID,pandas,dataframe,indexing,multi-index,Pandas,Dataframe,Indexing,Multi Index,这是我的多索引测试数据集- 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
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
我可以使用-
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
IIUC,它是
idxmin
和groupby
:
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