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多级分组实现排序的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
您可能感兴趣的文章:
- python pandas 组内排序、单组排序、标号的实例
- pandas数据分组和聚合操作方法
- pandas groupby 分组取每组的前几行记录方法
- Pandas 对Dataframe结构排序的实现方法
- pandas数值计算与排序方法
相关推荐
-
pandas groupby 分组取每组的前几行记录方法
直接上例子. import pandas as pd df = pd.DataFrame({'class':['a','a','b','b','a','a','b','c','c'],'score':[3,5,6,7,8,9,10,11,14]}) df: class score 0 a 3 1 a 5 2 b 6 3 b 7 4 a 8 5 a 9 6 b 10 7 c 11 8 c 14 df.sort_values(['class','score'],ascending=[1,0],inp
-
pandas数值计算与排序方法
以下代码是基于python3.5.0编写的 import pandas food_info = pandas.read_csv("food_info.csv") # ---------------------特定列加减乘除------------------------- print(food_info["Iron_(mg)"]) div_1000 = food_info["Iron_(mg)"] / 1000 add_100 = food_in
-
Pandas 对Dataframe结构排序的实现方法
Dataframe结构放在numpy来看应该是二维矩阵的形式,每一列是一个特征,上面会有个列标题,每一行是一个样本. 对Dataframe结构的某一列进行排序方法如下: # 对df表中的user_id这一列进行排序,默认是从小到大排 df = df.sort_index(by='user_id') 对多列进行排序方法如下: # 对user_id,sku_id这两列进行排序 df = df.sort_index(by=['user_id', 'sku_id']) 以上这篇Pandas 对Dataf
-
python pandas 组内排序、单组排序、标号的实例
摘要:本文主要是讲解一下,如何进行排序.分为两种情况,不分组进行排序和组内进行排序.什么意思呢?具体来说,我举个栗子. ****注意**** 如果只是单纯想对某一列进行排序,而不进行打序号的话直接使用.sort_values就可以了.下文是关于如何把序号也打上的 ---------------------------- 我们有一个数据集如下: 我们下面想进行两种排序.先说第一种比较简单的也是很常用的,简单的对某一列进行排序然后添加一列序号. 例如,我们队comment_num这一列进行从大到小的
-
pandas数据分组和聚合操作方法
<Python for Data Analysis> GroupBy 分组运算:split-apply-combine(拆分-应用-合并) DataFrame可以在其行(axis=0)或列(axis=1)上进行分组.然后,将一个函数应用到各个分组并产生新值.最后,所有这些函数的执行结果会被合并到最终的结果对象中去. GroupBy的size方法可以返回一个含有分组大小的Series. 对分组进行迭代 for (k1,k2), group in df.groupby(['key1','key2'
-
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)), column
-
PHP基于ICU扩展intl快速实现汉字转拼音及按拼音首字母分组排序的方法
本文实例讲述了PHP基于ICU扩展intl快速实现汉字转拼音及按拼音首字母分组排序的方法.分享给大家供大家参考,具体如下: ICU(International Components for Unicode)里提供了transliterator(直译器), 可以很方便把其他语言(比如简体中文)转为拉丁文表示: http://cn2.php.net/manual/zh/transliterator.transliterate.php Transliterator: allows getting la
-
C#创建Excel多级分组的方法
在Excel中如果能够将具有多级明细的数据进行分组显示,可以清晰地展示数据表格的整体结构,使整个文档具有一定层次感.根据需要设置显示或者隐藏分类数据下的详细信息,在便于数据查看.管理的同时也使文档更具美观性.那么,在C#中如何来创建Excel数据的多级分组显示呢?下面将进行详细阐述.方法中使用了免费版组件Free Spire.XLS for .NET,下载安装该组件,创建一个控制台应用程序后,添加引用该组件安装包下的dll文件到项目中,同时添加相应的命名空间即可.下面是具体的代码操作步骤,供参考
-
pandas数据分组groupby()和统计函数agg()的使用
数据分组 使用 groupby() 方法进行分组 group.size()查看分组后每组的数量 group.groups 查看分组情况 group.get_group('名字') 根据分组后的名字选择分组数据 准备数据 # 一个Series其实就是一条数据,Series方法的第一个参数是data,第二个参数是index(索引),如果没有传值会使用默认值(0-N) # index参数是我们自定义的索引值,注意:参数值的个数一定要相同. # 在创建Series时数据并不一定要是列表,也可以将一个字典
-
pandas 实现分组后取第N行
目的: 把question_id 对应的user_answer转成ABCD solution dfa=df.groupby('question_id').nth(0).reset_index() dfa['flag']='A' dfb=df.groupby('question_id').nth(1).reset_index() dfb['flag']='B' dfc=df.groupby('question_id').nth(2).reset_index() dfc['flag']='C' df
-
Pandas GroupBy对象 索引与迭代方法
如下所示: import pandas as pd df = pd.DataFrame({'性别' : ['男', '女', '男', '女', '男', '女', '男', '男'], '成绩' : ['优秀', '优秀', '及格', '差', '及格', '及格', '优秀', '差'], '年龄' : [15,14,15,12,13,14,15,16]}) GroupBy=df.groupby("性别") GroupBy.iter() GroupBy对象是一个迭代对象,每次迭代
-
C#实现泛型List分组输出元素的方法
本文实例讲述了C#实现泛型List分组输出元素的方法.分享给大家供大家参考,具体如下: 背景:在输出列表时,往往需要按照某一字段进行分组,比如在输出城市列表时,按照首字母进行分组,输出学生列表时,按照年级进行分组,然后再对分组的结果按照其他的字段进行排序. 如存在以下STU学生类,代码如下: public class STU { public int ID { get; set; } public string Name { get; set; } public int Age { get; s
随机推荐
- JS中利用swiper实现3d翻转幻灯片实例代码
- Photoshop把照片变为高光黑白效果
- iOS的UI开发中Button的基本编写方法讲解
- Oracle 多行记录合并/连接/聚合字符串的几种方法
- JS+CSS实现的漂亮渐变背景特效代码(6个渐变效果)
- 微信小程序 实现动态显示和隐藏某个控件
- C#使用第三方组件生成二维码汇总
- JSP中 Session和作用域的使用
- 浅谈javascript的Array.prototype.slice.call
- 在后台修改FTP密码后。为何旧密码新密码都可以用?
- php5系列的apache远程执行漏洞攻击脚本
- springboot springmvc抛出全局异常的解决方法
- 可以保证单词完整性的PHP英文字符串截取代码分享
- 在Eclipse IDE使用Gradle构建应用程序(图文)
- iOS Swift控制器转场动画示例代码
- PHP排序算法之直接插入排序(Straight Insertion Sort)实例分析
- 解决正则表达式\w和\d的疑惑
- python 读取.csv文件数据到数组(矩阵)的实例讲解
- PHP各种常见经典算法总结【排序、查找、翻转等】
- Java判断闰年的2种方法示例