鱼C论坛

 找回密码
 立即注册
查看: 1177|回复: 5

关于pandas中排序的疑问

[复制链接]
发表于 2019-4-2 08:16:54 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
  1. d1.groupby('企业名称')[d1.columns[3:]].agg(['skew',Series.kurt]).sort_values('skew',ascending =False)
  2. #按企业名称来分组,分别查看各个字段的偏度和峰度(峰度是在Series下才有的方法)
复制代码


上述命令,是我用在某文件中的,用来根据企业名称进行分组,计算一些数据的偏度和峰度。。我想用排序的办法想让结果按要求进行排序,如果用skew来作为排序参照的话,会报错。。不知道为什么。。
只能用‘企业名称’来排序。。。以前用的简单的统计数据,如均值、标准差都可以用来排序处理,也就是下面的命令又是可行的:
  1. data.groupby('品种编号')['花萼长'].agg(['mean','std','median']).sort_values('mean',ascending = False)
复制代码


所以,想请教下,如果想用skew或是kurt来排序的话,该怎么写sort_values里的参数? ---我试过Series.kurt, pd.DataFrame.skew都不行。。
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2019-4-2 08:35:58 | 显示全部楼层
"kurt"不行吗
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-4-2 08:43:23 | 显示全部楼层

kurt也不行。。试过了。。搞得很迷糊。。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-4-2 09:01:49 | 显示全部楼层

刚查看了数据,发现如果单纯使用skew或者kurt,可能真的不行。。
因为上述命令是针对每个企业的各个字段的数据,均进行偏度和峰度的计算,生成的是多组字段各自的偏度和峰度。。如果要排序的话,系统也不知道要按照哪个字段的偏度或峰度排序。。还是需要指定一个字段的偏度或峰度来排序的。。(当然,如果能根据指定的字段进行排序,可能会更好些。。因为便于查看到底哪些数据的偏度或峰度较高,方便确认数据的不平衡性)
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-4-2 09:14:44 | 显示全部楼层
老笨啊 发表于 2019-4-2 09:01
刚查看了数据,发现如果单纯使用skew或者kurt,可能真的不行。。
因为上述命令是针对每个企业的各个字段 ...

那你就把数据处理好
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-4-2 09:19:46 | 显示全部楼层
塔利班 发表于 2019-4-2 09:14
那你就把数据处理好

数据怎么个处理法?
我的最初命令是可以按照企业名称进行排序了。
但是,如果是要根据指定的字段进行排序,比如我提到的某个字段的skew来排序,查看其中的最大值和最小值。。这种情况,命令貌似没法写。。sort_values命令中的参数,不知道怎么设置。。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-1-15 00:57

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表