使用方法链接管道像专业人士一样编写 Pandas

掌握方法链接、分配() 和管道(),以编写更清晰、可测试、可用于生产的 Pandas 代码这篇文章《使用方法链接管道像专业人士一样编写 Pandas》一文首先出现在《走向数据科学》上。

来源:走向数据科学

我最近立即关闭了它。

不是因为它错了。该代码有效。数字已经查出来了。

但我不知道发生了什么。

到处都有变量。df1,df2,final_df,final_final。每一步单独来看都是有意义的,但作为一个整体,我感觉就像在走一个迷宫。我必须逐行阅读才能理解我已经做了什么。

有趣的是,这就是我们大多数人从 Pandas 开始的方式。

你学习了一些操作。您可以在此处进行过滤,在那里创建一个列,然后进行分组和聚合。它完成了工作。但随着时间的推移,你的代码开始变得更难信任,更难重新访问,而且更难共享。

这就是我意识到的一点。

Pandas 初级用户和中级用户之间的差距不在于了解更多的功能。这是关于你如何构建你的转变。

有一种模式,一旦你看到它,一切都会悄然改变。您的代码变得更容易阅读。更容易调试。更容易构建。

称为方法链。

在本文中,我将介绍如何开始正确使用方法链以及 allocate() 和 pipeline(),以及它如何改变我编写 Pandas 代码的方式。如果您曾经感觉您的笔记本随着它们的增长而变得凌乱,那么这可能会适合您。

转变:中级 Pandas 用户的不同做法

起初,我认为更好地使用 Pandas 意味着学习更多的函数。

更多技巧。更多语法。更多操作数据的方法。

但我构建得越多,我就越注意到一些事情。真正擅长 Pandas 的人不一定比我使用更多的函数。他们的代码看起来……不同。

清洁剂。更有意为之。更容易遵循。

他们没有编写包含大量中间变量的逐步代码,而是编写了相互流动的转换。您可以从上到下阅读他们的代码,并准确了解每个阶段的数据发生了什么。

感觉就像在读故事。

而不是思考:

你开始思考:

输出