【发布时间】:2019-05-20 11:34:12
【问题描述】:
我正在尝试对多级索引中的数据进行排序以进行可视化。 此时纯粹是根据值对数据进行排序
我尝试过使用 sort_index 和 sort_values,但都没有奏效。 我假设有一种方法可以将我不清楚的 2 结合起来。
示例代码
import pandas as pd
data = {'lev1':[1,1,2,2],
'lev2':['item1', 'item2', 'item3', 'item2'],
'col1':[.55, .44, .22, .34],
'col2':[.54, .86, .55, .44]}
df = pd.DataFrame(data=data)
df.set_index(['lev1', 'lev2'], inplace=True)
这应该会导致:
col1 col2
lev1 lev2
1 item1 0.55 0.54
item2 0.44 0.86
2 item3 0.22 0.55
item2 0.34 0.44
我希望看到的是根据 col2 中的值排序的输出。但是,保持多级索引不变。
意思是,结果应该显示:
col1 col2
lev1 lev2
1 item2 0.44 0.86
item1 0.55 0.54
2 item3 0.22 0.55
item2 0.34 0.44
欢迎任何想法或建议。
谢谢!
【问题讨论】:
标签: python pandas sorting dataframe multi-level