/Pandas_Advanced_Exercise

Pandas进阶修炼300题

Primary LanguageJupyter NotebookMIT LicenseMIT

Pandas进阶修炼300题

为什么会有 Pandas刷题系列

相信任何一个从学生时代走过来的读者,都已经被考试折磨了很久。

也都知道,光看书看定义没有用,需要刷题。

但折磨人要么是复习了一堆,但是却不考,要么就是考前找不到重点。

如果有一份资料,所有的考试题都被涵盖,那么一定会刷到天荒地老。

对于利用Pandas 进行数据分析也一样,在工作中越到一些 pandas 操作问题尝试搜索答案时,会发现有些文章说的云里雾里,或者是和我们问题一样但是数据不一样,代码没法拿来就用,又或者看了一堆文档还是解决不了等。

我也常常被这样折磨,有时好不容易解决的问题,过几天又忘记怎么操作了。所以我设计了这份习题,常见、不常见的操作都覆盖,每个操作保证有源数据、可执行源码,只要刷完一遍,再次遇到 pandas问题,定能在这份习题中找到!

为什么是 300 题

为什么是 300 题,是不是凑题?

其实在上一个版本也就是「pandas120题」,是有一点凑题的嫌疑,因为本来是先出了 20 题,发现反馈非常好,于是我在 20 题开始就定下了 120 题的计划,在最后为了凑满 120 题,设计了部分重合习题。这也是在后面让我愈发觉得不满意的一点。

但是这次从一开始就没有定下任何数量上的目标,只是心里预估会在 500 题左右,随着内容的深入,大约在制作完第 5 章时,发现还不到 200 题,于是感觉最终会在 300 题左右,要么就来个pandas365题。

后面很清晰的记得在写完第 7 章时,大约 200 题出头,当时就算了一下如果硬凑 365 题,又要水数量,索性不设定多少题,就叫pandas300题。

结果在最后一章制作完毕之后,一算恰好 298 题,那 298298 吧,反正后面还要新增,未来肯定是超过 300 题的,所以在没有题目数量的规范下,这次十章有超过一半都是 x1 题或者 x9 题(强迫症不要打我),每个章节写到我认为满意为止,当然若算上后面的实战案例,总数肯定超 400 题~

为什么会报错

在当天上午发布后,到下午下载量就超过了 500 人,我是在 macOS 下开发,由于电脑与环境的原因,可能会有部分读者会遇到报错。

目前已知的一个由我疏忽导致的 bug 已经在当天下午修复了,所以如果你是前天上午下载,并且在初始化答案时出现下面的报错可以重新下载全部习题即可图片

至于其他的导入异常、notebook不会打开、目录插件安装失败、 pandas 升级版本等问题,希望可以自行研究解决,这些都是一定能够通过搜索引擎简单搜索得到答案的。

所有题都用刷吗

在上一个版本 120 题中,分为 5 个章节,章节内容没有按照操作类型分类,所以大家都默认全部都做一遍。

但是现在又有专题练习,又有实战,前面300题需要完整刷一遍吗?

首先需要说明的是,这十个专题练习,每一章都配有独立的真实数据集与常见操作,如果你刚入门 pandas,建议全部刷一遍,或者至少浏览一遍,知道有哪些操作可以利用 pandas 实现。

至于常见操作,例如数据筛选、预处理、分组聚合、合并透视,如果想熟练使用pandas建议都刷一遍查漏补缺。

正确的使用方法

正如上面所说,这份习题一方面可以刷题查漏补缺。

另一方面可以用来当作速查手册,大部分代码拿走就用,或者简单思考就能理解。

你只需要知道什么样的操作在习题里面出现过,加上每一个操作都有数据和源码,你完全可以在真实场景操作中,遇到类似操作直接打开 notebook 查阅。这份习题涵盖的操作基本可以覆盖常见问题。

后续更新计划

一份好的习题是不断更新的。

后续更新计划主要有两个方面

一个是根据读者的真实使用体验来优化,例如最近会推出答案提示综合版以及答案直接出现在题目下的版本,这样更利于速查。

另一方面是更新更多的实战案例,每月都会更新一些利用pandas进行数据分析的真实案例,只有通过大量的案例才能进一步掌握。