pandas按行按列遍历Dataframe的三种方式

遍历数据有以下三种方法:

简单对上面三种方法进行说明:

bash 复制代码
iterrows(): 按行遍历,将DataFrame的每一行迭代为(index, Series)对,可以通过row[name]对元素进行访问。
itertuples(): 按行遍历,将DataFrame的每一行迭代为元祖,可以通过getattr(row, 'name')对元素进行访问,比iterrows()效率高。
iteritems():按列遍历,将DataFrame的每一列迭代为(列名, Series)对,可以通过row[index]对元素进行访问。
示例数据
python 复制代码
import pandas as pd
inp = [{'c1':100, 'c2':20}, {'c1':90, 'c2':403}, {'c1':503, 'c2':3}]
df = pd.DataFrame(inp)
print(df)

标题按行遍历iterrows():

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

可用row['name']作为索引

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

按行遍历itertuples():

可以用getattr(row, 'name')作为索引(注意row['name']会报错)

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

按列遍历iteritems():

注意这是按列读取遍历

python 复制代码
for index, row in df.iteritems():
    print(index) # 输出列名
python 复制代码
for row in df.iteritems():
    print(row[0], row[1], row[2]) # 输出各列
相关推荐
IOT.FIVE.NO.118 分钟前
Conda安装pytorch和cuda出现问题的解决记录
人工智能·pytorch·python
苏苏susuus3 小时前
机器学习:load_predict_project
人工智能·机器学习
山海不说话7 小时前
视频行为标注工具BehaviLabel(源码+使用介绍+Windows.Exe版本)
人工智能·python·计算机视觉·视觉检测
liuzhenghua669 小时前
Python任务调度模型
java·运维·python
小前端大牛马9 小时前
java教程笔记(十一)-泛型
java·笔记·python
sjtu_cjs9 小时前
Tensorrt python api 10.11.0笔记
开发语言·笔记·python
哆啦A梦的口袋呀9 小时前
深入理解系统:UML类图
开发语言·python·uml
虎冯河9 小时前
怎么让Comfyui导出的图像不包含工作流信息,
开发语言·python
葬爱家族小阿杰10 小时前
python执行测试用例,allure报乱码且未成功生成报告
开发语言·python·测试用例
xx155802862xx10 小时前
Python如何给视频添加音频和字幕
java·python·音视频