我找到了这个问题,它展示了如何根据MultiIndex的第一层对DataFrame
进行排序。因此,初始的DataFrame如下:
l = [[1,'A',99],[1,'B',102],[1,'C',105],[1,'D',97],[2,'A',19],[2,'B',14],[2,'C',10],[2,'D',17]]
df = pd.DataFrame(l,columns = ['idx1','idx2','col1'])
df.set_index(['idx1','idx2'],inplace=True)
# assume data has been received like this...
print df
col1
idx1 idx2
1 A 99
B 102
C 105
D 97
2 A 19
B 14
C 10
D 17
可以在每个level=1
组内进行排序,以产生如下结果:
col1
idx1 idx2
1 C 105
B 102
A 99
D 97
2 A 19
D 17
B 14
C 10
我的问题是:如何基于第一层级提取每个组的前
n
个元素?例如,如果
n=2
,则结果将为: col1
idx1 idx2
1 C 105
B 102
2 A 19
D 17
感谢您的考虑和回复。
在此之前。