前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >懂Excel就能轻松入门Python数据分析包pandas(十五):拆分数据

懂Excel就能轻松入门Python数据分析包pandas(十五):拆分数据

作者头像
咋咋
发布2021-09-01 14:38:34
6450
发布2021-09-01 14:38:34
举报
文章被收录于专栏:数据大宇宙数据大宇宙

> 经常听别人说 Python 在数据领域有多厉害,结果学了很长时间,连数据处理都麻烦得要死。后来才发现,原来不是 Python 数据处理厉害,而是他有数据分析神器—— pandas

前言

这是本系列第16篇的文章,之前有小伙伴私信我说,这系列例子太简单了,能给点实际点的例子吗。好吧,这篇来看看如何用 pandas 拆分数据到各个 Excel 文件。

> 这是入门系列,并且是按 Excel 功能来开展,复杂一点的需求,Excel 自带功能做不到呀

案例1

你的上级一言不合向你扔了一个业绩表:

  • - 要求每个部门一个 Excel 文件,发送给各自部门

这样子的需求,就别想啥 Excel 自带功能了,用个 Vba 实现还差不多,只不过你要学习啥数组、字典,这些高大上概念。

看看你怎么用 pandas 漂亮回应你的上级:

  • - df.groupby('部门') ,"每个部门 干啥事情",不就是"按部门分组"嘛,没错,就是这么简单的表示
  • - .apply ,每个部门干事情,里面的参数就是做的事情
  • - x.to_excel(f'res-部门/{x.name}.xlsx',index=False) ,要做啥呢,输出到 Excel 文件啊,就是 to_excel 方法

> 不会 groupby ?看专栏第9节内容

案例2

当你以为完成工作的时候,这时候上级又找到你,他希望每个部门的 Excel 文件,可以把男女数据分开2个工作表。

你:what the ………………,so easy

代码如下:

  • - 比之前复杂多了,其实多了2个部分
  • - 不能直接使用 to_excel 方法,因为这方法每次都会生成一个新的文件,由此要先定义 pd.ExcelWriter
  • - 当按性别分组时,调用 to_excel 要传入 pd.ExcelWriter
  • - exl.save(), 记得最后要保存文件

结果如下:

案例3

当你以为可以下班的时候,麻烦又一次找上你,现在各部门负责人不想按性别分开看,而是想看高于部门平均水平和低于平均水平的人。

有了上次经验,简单添加判断 销售额 的语句就可以了:

  • - is_over = x_df['销售额'] >= x_df['销售额'].mean() ,得到是否高于平均的值列,当然也是用这列值进行分组

总结

- DataFrame.to_excel ,一次输出 Excel 文件

- pd.ExcelWriter + DataFrame.to_excel ,一个文件输出多个工作表

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-09-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 数据大宇宙 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档