首页 > 后端开发 > Python教程 > 如何有效地迭代 Pandas DataFrame 中的行?

如何有效地迭代 Pandas DataFrame 中的行?

Susan Sarandon
发布: 2024-12-27 16:12:10
原创
815 人浏览过

How Do I Efficiently Iterate Over Rows in a Pandas DataFrame?

迭代 Pandas DataFrame 中的行

在 Pandas 中处理数据时,一项常见任务是迭代 DataFrame 的行。这允许您单独访问每一行的元素。

如何使用 iterrows() 进行迭代

迭代行的首选方法是使用 DataFrame.iterrows( ) 方法。此方法为每行生成一个元组,其中包含索引和作为系列的行。

df = pd.DataFrame({'c1': [10, 11, 12], 'c2': [100, 110, 120]})

for index, row in df.iterrows():
    print(row['c1'], row['c2'])
登录后复制

这将输出:

10 100
11 110
12 120
登录后复制

行对象的工作原理

行对象是表示行数据的 Pandas Series。您可以通过列名或索引来访问其元素。

iterrows() 的替代方法

您可以使用其他方法来迭代行,但它们通常效率较低。

  • DataFrame.itertuples() 生成一个namedtuple 而不是系列。
  • DataFrame.T.iteritems() 迭代列而不是行。

性能注意事项

迭代行DataFrame 的计算成本可能很高。如果性能是一个问题,请考虑使用矢量化解决方案或使用 Cython 或 NumPy 编写内部循环。

以上是如何有效地迭代 Pandas DataFrame 中的行?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板