Maison  >  Article  >  développement back-end  >  Méthode de regroupement à plusieurs niveaux Pandas pour réaliser le tri

Méthode de regroupement à plusieurs niveaux Pandas pour réaliser le tri

不言
不言original
2018-04-20 13:41:236022parcourir

Ce qui suit est une méthode de regroupement multi-niveaux de pandas pour implémenter le tri. Elle a une bonne valeur de référence et j'espère qu'elle sera utile à tout le monde. Jetons un coup d'œil ensemble

pandas a une fonction de regroupement groupby et une fonction de tri sort_values ​​​​, mais comment trier la trame de données après le regroupement ?

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

Recommandations associées :

pandas implémente la déduplication des tables en double et les reconvertit en tables

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn