首页 > 其他分享 >df.iterrows() 是 Pandas 中的一个方法,用于在遍历 DataFrame 时,逐行返回每一行的索引和数据

df.iterrows() 是 Pandas 中的一个方法,用于在遍历 DataFrame 时,逐行返回每一行的索引和数据

时间:2024-08-22 08:54:32浏览次数:13  
标签:index 遍历 df DataFrame iterrows 逐行

df.iterrows() 是 Pandas 中的一个方法,用于在遍历 DataFrame 时,逐行返回每一行的索引和数据。它生成一个迭代器,每次迭代时返回一个 (index, Series) 对,index 是行索引,Series 是该行的数据。

详细解释

  • df.iterrows():
    • 这个方法遍历 DataFrame 的每一行。
    • 每次迭代时,返回的是 (index, Series),其中 index 是行的索引,Series 是表示行数据的 Pandas Series 对象。

示例

假设有一个 DataFrame df

import pandas as pd

data = {'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]}
df = pd.DataFrame(data)

 

这个 DataFrame 看起来像这样:

 ABC
0 1 4 7
1 2 5 8
2 3 6 9

如果使用 iterrows() 迭代:

for index, row in df.iterrows():
    print(index)
    print(row)

 

输出将是:

0
A    1
B    4
C    7
Name: 0, dtype: int64

1
A    2
B    5
C    8
Name: 1, dtype: int64

2
A    3
B    6
C    9
Name: 2, dtype: int64

 

作用总结

  • 遍历每一行iterrows() 允许你逐行遍历 DataFrame 的数据,非常适合需要逐行处理数据的情况。
  • 返回行索引和行数据:在每次迭代中,你会得到当前行的索引和一个包含该行数据的 Series 对象。
  • 灵活的数据操作:你可以在遍历过程中对行数据进行任何操作,例如数据处理、条件判断、存储等。

注意事项

  • iterrows() 的性能在处理大数据集时可能不如矢量化操作高效,因为它逐行遍历,不能充分利用 Pandas 的优化。
  • iterrows() 返回的是行的副本,而不是视图,对 row 的修改不会影响原始 DataFrame。

因此,df.iterrows() 适用于需要逐行处理数据的场景,但在可能的情况下,应该优先选择更高效的矢量化操作。

标签:index,遍历,df,DataFrame,iterrows,逐行
From: https://www.cnblogs.com/beichengshiqiao/p/18372937

相关文章

  • AcWing 1078. 旅游规划 (DFS找树的直径+直径中点性质求解,无DP)
    原题链接题目描述算法引用自树的直径-OI-Wiki:若树上所有边边权均为正,则树的所有直径中点重合证明:使用反证法。设两条中点不重合的直径分别为\(\delta(s,t)与\delta(s',t')\),中点分别为\(x\)与\(x'\)。显然,\(\delta(s,x)=\delta(x,t)=\delta(s',x')=\delta(......
  • 2024年8大图片转pdf软件免费推荐,轻松将图片转为PDF!
    图片转pdf软件该怎么挑选呢?市面上的PDF处理工具多如牛毛,让我们难以抉择。其实我们可以根据软件的功能特点及突出功能效果,再结合自身实际运用场景来挑选最适合自己的图片转pdf工具。今天小编将结合市面上广为熟悉的PDF编辑软件,分别详细讲解它们的兼容系统、产品功能、软件优点......
  • 大模型入门书籍推荐:动手做AI Agent(PDF版免费下载)
    动手做AIAgent人工智能时代一种全新的技术Agent正在崛起。这是一种能够理解自然语言并生成对应回复以及执行具体行动的人工智能体。它不仅是内容生成工具,而且是连接复杂任务的关键纽带。本书将探索Agent的奥秘,内容包括从技术框架到开发工具,从实操项目到前沿进展,通过带着......
  • Abaqus UFIELD和USDFLD子程序详解
    UFIELD和USDFLD是Abaqus极具迷惑性的两个子程序,这两个家伙长得就比较像兄弟,而且都是用来自定义场变量的,同时还有一个状态变量statevariable掺和在中间,再加上帮助里面的解释也基本上不是人话,很容易就把人搞二了,今天帖主就来撸一撸这两个子程序。1、自定义场变量  Abaqus......
  • Java预览PDF时的文件名称问题
     直接看问题直接看问题解决思路看了一下一个有问题的PDF文件之后发现文件的名称和文件的属性名其实不一致,浏览器默认展示的是文件的属性名,而不是我们看到的文件名称这也就让我定位到了问题的所在,出现这个bug的原因就是PDF文件的属性名称与文件名称不一致,定位到问题之后就很......
  • DFS查找依赖路径并按依赖层级展示生产的数据
    背景有如下场景://定义结构体deptypedepModelstruct{Srcstring`json:"src"`Dependstring`json:"depend"`}//示例输入deps:=[]depModel{{"A","B"},{"A","F"},{&q......
  • python实现自动化生成pdf报告
    easypdf使用手册1.项目介绍1.1关于1.2easypdf有什么优势1.2easypdf可以用来做什么1.3项目框架1.4项目教程视频2.安装项目环境2.1安装Python32.2在Windows上安装Python32.3在Mac上安装Python32.4在Linux上安装Python32.5在Windows上安装Pycharm2.6在Mac上......
  • 奥威亚云视频平台UploadFile.aspx存在文件上传漏洞
    1前言免责声明:请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失,均由使用者本人负责,所产生的一切不良后果与文章作者无关。该文章仅供学习用途使用!!!2漏洞描述为了满足高校培养人才和教学管理的需求,顺应时......
  • Windows上用Intel编译netCDF-Fortran
    1.下载并安装netCDF-Chttps://downloads.unidata.ucar.edu/netcdf/安装目录D:\software\netCDF4.9.2 2.下载netCDF-Fortran3.编译netCDF-Fortran(1)解压源代码netcdf-fortran-4.6.1.zip到D:\software\netcdf-fortran-4.6.1\source(2)打开InteloneAPIcommandpromptforIn......
  • ROS2 Moveit2 - URDF 和 SRDF
    URDFMoveIt2从URDF(统一机器人描述格式)开始,这是用于在ROS和ROS2中描述机器人的原生格式。在本教程中,您将找到URDF的资源、重要提示以及MoveIt2特定要求的列表。URDF资源URDFROSWiki页面-URDF ROSWiki页面是关于URDF的大部分信息的来源。URDF教程-......