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]) # 输出各列
相关推荐
彦为君13 小时前
JavaSE-05-字符串(全面深入)
java·开发语言·python·ai·ai编程
pen-ai13 小时前
Kennard-Stone (KS) 算法详解 —— 从实验设计到样本划分的经典方法
人工智能·算法·机器学习
Upsy-Daisy13 小时前
AI Agent 项目学习笔记(九):网页搜索、网页抓取与资源下载工具
笔记·python·学习
wj30558537813 小时前
课程 1:WSL + uv + ComfyUI 环境选择说明
python·wsl·cuda·uv·comfyui
wj30558537813 小时前
课程 2:使用 uv 安装 ComfyUI
python·uv·comfyui
kels889913 小时前
实时外汇api的节假日交易时间表,能自动判断休市吗?
开发语言·经验分享·笔记·python·金融·区块链
咋吃都不胖lyh13 小时前
Prompt Engineering(提示工程)和 CoT(Chain of Thought,思维链)
人工智能·深度学习·机器学习
松☆13 小时前
torchair:昇腾PyTorch适配层生态协作深度解读
人工智能·pytorch·python
dhjabc_113 小时前
从零开发一个功能强大的 Markdown 预览器
python·开源软件
前端若水13 小时前
使用 IndexedDB 在客户端存储对话记录
java·前端·人工智能·python·机器学习