pandas excel有多个工作表_开眼界!Python的pandas轻松做出Excel能手动筛选透视表的效果

d4580495-25f6-4242-842f-5530455cb5ed

此系列文章收录在公众号中:数据大宇宙 > 数据处理 > E-pd

转发本文并私信我"python",即可获得Python资料以及更多系列文章(持续更新的)

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

前言

本系列介绍了许多类比 Excel 的 pandas 操作,确实他们都能很好对应起来,这是因为 pandas 本身是以行列表作为核心概念,比如说 Excel 中的透视表,在 pandas 中就有一一对应,本系列已经讲解过。

Excel 的操作便利性在于只需要鼠标点击就可以完成操作,这对于查看数据是非常方便。

难道我们用 Python 就不能做到吗?本文将结合一些工具,使得你的 pandas 处理过程变得灵活动态。


透视表的灵活性

当我们拿到一份数据时,经常需要不断改变条件对数据进行观测,如下一份某水果的销售情况:

adb08c1cfd634f91997f8e70dd51f1d1
  • 一行数据表示,某天(date)在某地区(region)此水果的某个品种(type)的价格(AveragePrice)和销量(Total Volume)
  • 希望看到不同年份总销量前10的地区,以及各个品种的销量信息

由于需求需要汇总,Excel 中使用透视表是最好的方式:

9c05944a730842f4aea9d97beab31c59
  • 过程不多说,这里值得注意的是,我们能通过最上方选择不同的年份,下方数据表能马上显示此年份总销量 top 10 的地区数据

用 Python 能快速简单做出这种效果吗?


小组件

我们将使用 ipywidgets 库,此工具最适合用在 Jupyter Notebook 上,假设你已经安装好 Jupyter Notebook ,打开你的 cmd,执行以下命令:

pip install ipywidgets && jupyter nbextension enable --py widgetsnbextension

直到看到如下信息:

Enabling notebook extension jupyter-js-widgets/extension...      - Validating: ok

现在重启你的 Jupyter Notebook 即可

注意:

  • 如果你不知道怎么安装 Anaconda 或 Jupyter Notebook 的使用,可以查看我以前的文章
  • widgets 库用于完成各种小组件,他能生成网页内容,不仅仅在 Jupyter Notebook 使用,但本文只讲解在 Jupyter Notebook 上的使用

5a3a1e02-bef8-42f1-9cfc-a8efd83e3a09

修饰你的 pandas 处理

本文需要导入的库是这些:

35845c8dae5a47d9b9f621c03cc5f264

首先使用 pandas 得到透视表的结果,这非常简单:

70229a67eac74e09a65353349236b98b
  • 行3,4:为了突出可以变化的东西,这里定义2个变量
  • 通过修改2个变量,我们能得到对应的结果数据

写不出来这些 pandas 代码?看看我的 pandas 专栏,入门到高级到数据分析案例应用:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值