我试图通过熊猫枢轴表中的行之和,对最后一列/边距/aggrfunc进行降序排序。我知道我错过了一些简单的东西,但我搞不懂。
数据表/枢轴表:
WIDGETS
DATE 2/1/16 2/2/16 2/3/16 All
NAME
PERSON1 43 5 48
PERSON2 4 7 11
PERSON3 56 143 199
我需要它做的也是按aggfunc/利润率排序:
WIDGETS
DATE 2/1/16 2/2/16 2/3/16 All
NAME
PERSON3 56 143 199
PERSON1 43 5 48
PERSON2 4 7 11
pt = pd.pivot_table(df,values=['WIDGETS'],index=['NAME'],columns=['DATE'],aggfunc=len,fill_value='',margins=True,margins_name='WIDGETS')
pt.sort_values(by='WIDGETS',ascending=False,inplace=True)
错误: ValueError:无法在多个索引中按列小部件排序,您需要解释提供所有级别。
有什么建议吗?
发布于 2016-02-26 05:10:08
您可以在函数sort_values
和参数ascending
中使用元组。
print pt
WIDGETS
DATE 2/1/16 2/2/16 2/3/16 All
NAME
PERSON1 1 2 3
PERSON2 2 4 3 9
PERSON3 1 1 2
All 4 6 4 14
pt.sort_values(by=('WIDGETS', 'All'), ascending=False,inplace=True)
print pt
WIDGETS
DATE 2/1/16 2/2/16 2/3/16 All
NAME
All 4 6 4 14
PERSON2 2 4 3 9
PERSON1 1 2 3
PERSON3 1 1 2
https://stackoverflow.com/questions/35652270
复制相似问题