这篇文章主要介绍了pandas中多级分组如何实现排序,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
pandas有groupby分组函数和sort_values排序函数,但是如何对dataframe分组之后排序呢?
In [70]: df = pd.DataFrame(((random.randint(2012, 2016), random.choice(['tech', 'art', 'office']), '%dk-%dk'%(random.randint(2,10), random.randint(10, 20)), '') for _ in xrange(10000)), columns=['publish_time', 'classf', 'salary', 'title'])
In [71]: df.head()
Out[71]:
publish_time classf salary title
0 2012 art 2k-19k
1 2014 office 5k-17k
2 2013 office 2k-10k
3 2013 art 5k-14k
4 2013 art 2k-14k
In [72]: df.groupby(['publish_time', 'classf', 'salary']).count()['title'].groupby(level=0, group_keys=False).nlargest(10)
Out[72]:
publish_time classf salary
2012 art 7k-13k 18
4k-13k 16
tech 3k-12k 14
art 6k-16k 13
8k-15k 13
office 5k-18k 13
tech 4k-14k 13
感谢你能够认真阅读完这篇文章,希望小编分享的“pandas中多级分组如何实现排序”这篇文章对大家有帮助,同时也希望大家多多支持天达云,关注天达云行业资讯频道,更多相关知识等着你来学习!