主要观点总结
本文主要探讨了使用循环遍历pandas DataFrame的四种不同方法,包括iterrows、itertuples、字典和数组列表。文章通过实验对比了这些方法的时间效率,发现iterrows函数在遍历DataFrame时效率最低,而字典和数组列表的迭代方法最为高效。文章还提到了在处理大型数据集时,最佳实践是矢量化,但矢量化会增加开发成本。最后,文章总结了各种方法的优缺点,并鼓励开发者根据实际情况选择适当的方法。
关键观点总结
关键观点1: 文章介绍了使用四种方法遍历pandas DataFrame:iterrows、itertuples、字典和数组列表。
这些方法各有特点,效率也各不相同。
关键观点2: iterrows函数在遍历DataFrame时效率最低,而字典和数组列表的迭代方法最为高效。
相较于iterrows函数,使用itertuples函数可以使DataFrame迭代的速度提高6倍。
关键观点3: 处理大型数据集时,最佳实践是矢量化,但矢量化会增加开发成本。
在一些情况下,为了开发方便,可以选择使用快速循环来替代矢量化。
关键观点4: 作者建议开发者根据实际情况选择适当的方法。
需要根据数据集大小、开发成本、开发效率等因素进行综合考虑。
文章预览
来源 :DeepHub IMBA 本文 约1500字 ,建议阅读 5 分钟 本文将探索遍历pandas dataframe的各种方法,检查每个循环方法的相关运行时 。 循环是我们编程技能中的一项固有技能。当我们熟悉任何编程语言时,循环就会成为一个基本的、易于解释的概念。 在这篇博文中,我们将探索遍历pandas dataframe的各种方法,检查每个循环方法的相关运行时。为了验证循环的有效性,我们将生成百万级别的数据,这也是我们在日常处理中经常遇到的数量级。 实验数据集 我们将生成一个包含600万行和4列的DataFrame。每一列将被分配一个0到50之间的随机整数。 import numpy as np import pandas as pd df = pd.DataFrame(np.random.randint( 0 , 50 , size=( 6000000 , 4 )), columns=( 'a' , 'b' , 'c' , 'd' )) df.shape # (6000000, 5) df.head() Iterrows 我们通过基于以下标准引入一个新的列' e '来扩展数据框架' df ':
………………………………