回答前自白:这本书我看过,并且是pandas的重度使用者。
首先,这本书知识密度一点都不高。说到底,它只讲了一个叫做DataFrame及其衍生的各类使用方式。所以核心就是DataFrame,如何操作DataFrame,如何利用DataFrame进行数据分析及衍生使用,比如画图等等。
讲完这个回到正题。如何这本书。我猜题主不是计算机专业出身。这里有个有趣的问题,你需要记得各个函数的调用方式吗?这个问题的同类类比在计算机的话题里,有个看似无关的问题,你们学了那么多语言,不会记串吗?几乎所有的答案都是会。但是记串了要紧吗?不要紧。有ide提示,有文档可以查,所以查下就行了。所谓知识有两种,一种是记得的,另一种是你知道在哪里的。编程领域,我觉得大部分都是后者。一个人哪有这么多脑容量,记得这么多函数和参数。我哪里记得readexcel到底怎么去头,是不是有skip_header这一个参数,但是这不重要,我可以查文档啊。
同理,我也不需要知道它有具体什么窗口函数,但是你还是得知道它有相应的功能。
所以,在学习的时候,你首先应该记住的不应该是具体的函数(尽管你可以去记住),首先应该是大体知道它有哪些功能,你知道从哪里去找到它们。(这就是一种自上而下的学习和自下而上的学习的区别)。
我更多的是看了pandas,numpy,statsmodels,scipy的模块,然后我去实现教科书中的各类回归分析啊之类的东西,然后我喷过它们的图画的太烂了,有时候简直是错误。etc.
我看wes的这本书,还没怎么入门pandas。用这类库的时候,要想着设计者的思路,不要你想要怎么怎么样,而是想着这个库的作者想要你怎么怎么样。比如吧,很多人都在想着把DataFrame当成一个通用的数据存储的容器,那简直就和设计思路相违背(我在知乎回答这类问题简直烦透了),尽管可以实现相关功能,但是看着不是一般的别扭。所以,我一般把这些书当成小说看,看完留个印象,可以回过头来查,但是不觉得有死记硬背的必要。
由于这是pandas作者写的书,所以很多的时候里面贴了很多best practice的代码,这些就是我回头翻看的理由。想着要是wes,这个功能会怎么实现。