我有一个带有MultiIndex的DataFrame,打印在控制台上看起来像这样:
value indA indB scenarioId group 2015-04-13 1 A -54.0 1.0 1.0 B -160.0 1.0 1.0 C -15.0 0.0 1.0 2 A -83.0 1.0 1.0 3 A -80.0 2.0 2.0 4 A -270.0 2.0 2.0 2015-04-14 1 A -56.0 1.0 1.0 B -1.0 1.0 1.0 C -60.0 0.0 1.0 2 A -32.0 1.0 1.0 3 A -91.0 2.0 2.0 4 A -17.0 2.0 2.0
我使用groupby
和sum
函数对初始数据集进行操作得到了它。
我想保持相同的格式,但根据value
列对其进行排序。我尝试使用排序函数来做到这一点,但我认为MultiIndex的第一个索引(用于日期)没有名称是个问题。
基本上,输出应该像这样:
value indA indB scenarioId group 2015-04-13 1 B -160.0 1.0 1.0 A -54.0 1.0 1.0 C -15.0 0.0 1.0 2 A -83.0 1.0 1.0
请问有人可以为我解释一下这个吗? 谢谢。
预先感谢。
df = df.groupby(level=[0,1]).head(2)
,但是所有的组都会被包括进去(我不确定是否需要)。 - jezraeldf = df.groupby(level=0)['value'].nsmallest(2)
。 - jezrael