如何利用itertuples对DataFrame进行遍历

 更新时间:2023年06月13日 10:54:21   作者:幸运的Alina  
这篇文章主要介绍了如何利用itertuples对DataFrame进行遍历问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

用itertuples对DataFrame进行遍历

最近在做推荐系统实践的时候需要生成物品同现矩阵和用户物品矩阵,发现了对DataFrame对象进行遍历很方便的函数itertuples

与此相关的有如下:

  • iterrows() : 将DataFrame迭代成(index ,series)
  • iteritems():将DataFrame迭代成(列名,series)
  • itertuples():将DataFrame迭代成元组 

示例如下:

通过getattr()函数可以直接获取元组内指定的值

这里通过列明索引访问对应的值

这里通过Index 索引获取对应的值

Pandas——Dataframe行遍历几种常用方法性能分析

pandas作为python数据分析的一大利器,为广大数据分析人员使用。无意中,听到美女同事吐槽:dataframe好慢啊!嗯哼,瞬间引起了我这个数据人的注意,过去一看,原来是用的方法本身效率低。

日常工作中,按照行遍历数据是我们一个非常常见的场景!尤其是从sql boy转到数据分析的我,动不动就想

 select * from table1;

一下,看看数据的大概情况。这一操作在pandas中的实现主要有一下几种:

1、iterrows()

原理是将Dataframe迭代为Series,再返回结果。这一过程中需要进行类型检查,所以,会花费很长的时间。(不建议使用)

for index, row in df.iterrows():
     #字典方式访问
     print(index, row['c1'], row['c2'])

2、itertuples()

原理是将Dataframe迭代为tuple,再进行返回,由于元组不可变的特性,此过程不需要进行类型检查。(效率高,推荐使用)

for row in student.itertuples():
    # print(row)
    print(row.Index, row.name, row.account, row.pwd)
    print(row.Index, getattr(row,'name'), getattr(row,'account'), getattr(row,'pwd'))

3、for + zip 

这种方法是直接手动构造原生tuple,无需关心index数据。(效率高,推荐使用)

for A, B in zip(df['A'], df['B']):
    print(A, B)

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Python编辑和运行的四种方式

    Python编辑和运行的四种方式

    本篇内容主要是讲python在电脑上编辑和运行的几种不同方式,后面主要是在pycharm中去写代码,然后运行,其实还有其他的方式可以在电脑上写python代码和运行python代码,需要的朋友可以参考下
    2024-08-08
  • Python解析cyber record文件的示例详解

    Python解析cyber record文件的示例详解

    cyber record 是 Cyber RT 中用于录制和回放数据的工具,本文将为大家展示一下如何使用Python进行解析cyber record文件,需要的可以参考下
    2025-02-02
  • python可扩展的Blender 3D插件开发汇总

    python可扩展的Blender 3D插件开发汇总

    这篇文章主要为大家介绍了python可扩展的Blender 3D插件开发汇总,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-09-09
  • 如何使用pandas对超大csv文件进行快速拆分详解

    如何使用pandas对超大csv文件进行快速拆分详解

    Pandas是Python语言的一个扩展程序库,提供高性能、易于使用的数据结构和数据分析工具,下面这篇文章主要给大家介绍了关于如何使用pandas对超大csv文件进行快速拆分的相关资料,需要的朋友可以参考下
    2022-07-07
  • Python+OpenCV目标跟踪实现基本的运动检测

    Python+OpenCV目标跟踪实现基本的运动检测

    这篇文章主要为大家详细介绍了Python+OpenCV目标跟踪实现基本的运动检测,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-07-07
  • python3实现弹弹球小游戏

    python3实现弹弹球小游戏

    这篇文章主要介绍了python3实现弹弹球小游戏,图形用户界面tkinter,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-11-11
  • Python实现对字符串中字符提取校验

    Python实现对字符串中字符提取校验

    众所周知,python之所以很方便在一定程度上是因为随时都可能有人又创作了一个好用又方便的python非标准库。本文就来用Python实现对字符串中字符进行提取校验,需要的可以参考一下
    2022-10-10
  • Python3 数据结构示例详解

    Python3 数据结构示例详解

    本文介绍了Python中的四种基本数据结构——列表、元组、集合和字典,以及如何根据具体需求选择合适的数据结构,文章还展示了如何使用这些数据结构进行基本操作,并提供了示例代码,感兴趣的朋友跟随小编一起看看吧
    2025-11-11
  • Python读写Json涉及到中文的处理方法

    Python读写Json涉及到中文的处理方法

    下面小编就为大家带来一篇Python读写Json涉及到中文的处理方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-09-09
  • python使用numpy按一定格式读取bin文件的实现

    python使用numpy按一定格式读取bin文件的实现

    这篇文章主要介绍了python使用numpy按一定格式读取bin文件的实现方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-05-05

最新评论