我用下面几行代码从一个数据帧创建了一个数据透视表:
df_multi_level = pd.pivot_table(df_raw_final, values=['weight'], index=['mb_assetclass', 'mb_categoriastrumento', 'asset_Name'], aggfunc=np.sum)
df_multi_level = df_multi_level.sort_values(by='mb_assetclass', ascending=False)
我有这个数据透视表:
我想要将列‘weight’的值从最大到最小排序,同时保留'mb_assetclass‘和'mb_categoriastrumento’的分组(从最大到最小)
发布于 2021-08-14 02:08:17
您可以尝试按.reset_index()
重置索引,以便在排序前恢复之前在pivot_table()
期间设置为索引的列。
然后使用多列进行排序,并使用所需的True/False
值分别设置参数ascending=
,如下所示:
df_multi_level = df_multi_level.reset_index()
df_multi_level = df_multi_level.sort_values(['mb_assetclass', 'mb_categoriastrumento', 'weight'], ascending=[True, True, False])
https://stackoverflow.com/questions/68782185
复制相似问题