PhoneGap中文网

 找回密码
 立即注册
查看: 17053|回复: 0
打印 上一主题 下一主题

Pandas 学习之groupby操作详解

[复制链接]

87

主题

87

帖子

327

积分

中级会员

Rank: 3Rank: 3

积分
327
跳转到指定楼层
楼主
发表于 2017-7-27 11:42:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本文和大家分享的主要是Pandas groupby操作相关内容,一起来看看吧,希望对大家学习Pandas有所帮助。
  在做数据分析的时候,我们的数据一般从数据库来,那么就涉及到groupby操作。例如,我们要预测一个居民小区的未来一段时间的电费,那么就要将数据按照小区groupby,然后按照时间排序,这里groupby操作可完美的完成这个任务。
  假设数据表cellfee结构为:
  reportdate, cidyid, cellid, fee
  读取表数据
  import pandas as pdfrom sqlalchemy import create_engine# default
  engine = create_engine('mysql+pymysql://ledao:ledao123@localhost/pandas_learn')
  original_data = pd.read_sql_table('cellfee', engine)
  original_data
  groupby分组汇总指定类别的所有数据
  for k, v in original_data.groupby([original_data['cityid'], original_data['cellid']]):
  print('key: {}, type is {}'.format(k, type(k)))
  print('vale:\n {}, \ntype is {}'.format(v, type(v)))
  上述的代码的结果为:
  key: ('1', '1'), type is
  vale:
  reportdate cityid cellid fee
  0 2017-07-20 1 1 10.0
  1 2017-07-21 1 1 10.0
  2 2017-07-22 1 1 10.0
  3 2017-07-23 1 1 10.0,
  type is
  通过一个简单的groupby函数,我们就能将数据库中以列存储的数据根据分组要求全部汇总到一个形成一个DataFrame。后续对分组形成的DataFrame可以做形成特征向量,排序,再继续汇总等常见的数据分析的操作。
  在groupby的操作上,我只服气scalakotlin的模式,即groupbymapflatMap),希望pandas以后也会支持这种函数式的操作。
  agg函数
  除了groupby的结果通过for遍历之后,Pandas也提供了agg函数。主要用于对具体的列的操作,类似sql

来源:简书


it营
回复

使用道具 举报

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

本版积分规则

关闭

站长推荐 上一条 /1 下一条

ionic4视频教程

Archiver|手机版|小黑屋| PhoneGap中文网 ( 京ICP备13027796号-1 )  

GMT+8, 2024-11-27 08:39 , Processed in 0.094256 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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