pandas遍历Dataframe的三种常用方式:iterrows、itertuples与iteritems详解

认真发呆
认真发呆
发布时间:2026-10-13| 5人浏览过
原创

本文详细介绍pandas中遍历Dataframe的三种核心方法:iterrows、itertuples和iteritems。通过对比分析,说明iterrows按行返回(index, Series)对,itertuples按行返回元组且效率更高,iteritems按列返回(列名, Series)对。文章提供具体代码示例,帮助开发者根据性能需求和访问方式选择最合适的数据遍历方案。

pandas Dataframe遍历方法概述

在pandas中处理Dataframe数据时,通常涉及以下三种遍历方式:

下面对这三种遍历方法进行简要说明:

  • iterrows():该方法用于按行遍历,将Dataframe的每一行迭代为(index, Series)元组对。在循环中,可以通过row[name]的形式访问具体的元素值。
  • itertuples():同样用于按行遍历,但将每一行迭代为namedtuple对象。虽然仍可通过getattr(row, name)或row.name访问元素,但其执行效率通常高于iterrows()。
  • iteritems():该方法用于按列遍历,将Dataframe的每一列迭代为(列名, Series)对。在循环中,可以通过row[index]的方式访问列中的元素。

示例数据构建与遍历实现

为了演示上述方法,首先构建示例数据:


import pandas as pd

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

print(df)

iterrows()按行遍历详解

使用iterrows()进行按行遍历:


for index, row in df.iterrows():
 print(index) # 输出每行的索引值


访问元素示例:row['name']


# 对于每一行,通过列名name访问对应的元素
for row in df.iterrows():
 print(row['c1'], row['c2']) # 输出每一行

itertuples()按行遍历详解

使用itertuples()进行按行遍历:

访问元素示例:getattr(row, 'name')


for row in df.itertuples():
 print(getattr(row, 'c1'), getattr(row, 'c2')) # 输出每一行

iteritems()按列遍历详解

使用iteritems()进行按列遍历:


for index, row in df.iteritems():
 print(index) # 输出列名


for row in df.iteritems():
 print(row[0], row[1], row[2]) # 输出各列

以上内容涵盖了pandas遍历Dataframe的主要方式,希望对您的学习有所帮助。欢迎继续支持本站获取更多信息。

相关标签:

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。