【问题标题】:Pandas deep dive [closed]熊猫深潜[关闭]
【发布时间】:2022-01-14 14:31:18
【问题描述】:

我对 pandas 非常熟悉,并且每天都在使用它。 最近我做了几个项目,我需要以一种非常有效的方式构建东西,并且我需要了解 pandas 的基本原理。 我正在寻找一本书/材料,我可以在效率方面更好地理解熊猫。 有什么建议吗?

【问题讨论】:

    标签: python pandas performance


    【解决方案1】:

    如果您已经熟悉 Pandas(例如,您可以相当快地编写语法来完成任务 XYZ,并且您知道完成最常见任务的几种不同方法),那么我建议更好的方法是自己对您的选择进行基准测试。

    您可以为此使用timeit。通过这种方式,您可能会更好地了解事物,然后您还将建立一个基础,以后可以在确定特定需求时添加该基础。不需要非常花哨的编码,只需将一堆带有 timeit 的测试用例转储到一个文件中。它不需要花费那么长时间,并且比在基准测试中读取某些测试用例上的某些内容更具可重用性/适应性,这些测试可能实际上反映或不反映实际数据的行为。

    从我之前进行的快速 Google 搜索中,据我所知,您会在该主题上找到非常广泛的建议,您可能已经知道 - 用户适当的数据类型(int 比 float 快),避免 for 循环并改用矢量化符号等。这些都是很好的建议,但根据您对 Pandas 的理解程度,听起来您已经超出了该建议水平。

    【讨论】:

    • 我确实对它们进行了测试,但是例如,本周我了解到 np select 是详尽无遗的,这意味着它正在计算所有条目的所有选项,然后根据条件进行选择。对于大量条件,这可能是低效的。所以这只是我想更好地理解的事情的一个例子
    • 我明白了——但据我所知,您仍然不太可能在这方面找到很多全面的建议。这只是非常具体的东西,没有大量的受众,所以谁会花时间把它写出来?如果你仍然认为你可以找到关于它的文章,也许搜索你正在使用的特定功能(例如 np.select() 等)可能会产生一些人的博客文章,这些人做了一个基准测试/对特定的事情有所了解.也许其他人会想出更好的东西,但我对此表示怀疑。
    猜你喜欢
    • 2021-12-30
    • 2020-01-19
    • 2018-05-04
    • 2015-02-03
    • 2022-01-26
    • 1970-01-01
    • 1970-01-01
    • 2015-03-11
    • 1970-01-01
    相关资源
    最近更新 更多