我正在寻找一种基于其中一个索引对多索引数据框进行排序的方法。这是一个例子......
我有......
mi = pd.MultiIndex.from_tuples([('baz', 'y'), ('foo', 'y'), ('bar', 'y'), ('baz', 'z'), ('foo', 'z'), ('bar', 'z')],names=['first','second'])
df = pd.DataFrame(np.random.randn(6),index=mi)
print df
产生
first second
baz y 1.902902
foo y -0.128341
bar y 0.481100
baz z -2.185144
foo z 1.015320
bar z -1.624616
如果我......
df2 = df.sort()
我明白了:
print df2
first second
bar y 0.481100
z -1.624616
baz y 1.902902
z -2.185144
foo y -0.128341
z 1.015320
我怎样才能对df进行排序:
first second
baz y 1.902902
z -2.185144
foo y -0.128341
z 1.015320
bar y 0.481100
z -1.624616
答案 0 :(得分:0)
我不确定在foo之后条形图是如何排序的,但我认为这是你想要的:
df.sortlevel(0)
0
first second
bar y -0.114659
z 0.453896
baz y -0.327006
z 0.685782
foo y 0.444256
z -0.167179