Pandas | 遍历行、遍历列

  • Pandas遍历DataFrame的行

  • 迭代range(len(df))

  • 迭代df.iterrrows()

  • 迭代df.itertuples()

  • Pandas遍历DataFrame的列

  • 迭代df.items()

  • 迭代df.columns

Pandas遍历DataFrame的行

  • 迭代range(len(df))

  • 迭代df.iterrows()

  • 迭代df.itertuples()

import pandas as pd

# 创建示例 DataFrame
data = {'姓名': ['张三', '李四', '王五'],
        '年龄': [25, 30, 35],
        '城市': ['北京', '深圳', '上海']}
df = pd.DataFrame(data)

迭代range(len(df))

range(len(df))返回的是序数迭代器,通过iloc的方式访问每一行。

for i in range(len(df)):
    # 访问第i行的姓名列
    print(df.iloc[i]['姓名'])

结果为:

张三
李四
王五

迭代df.iterrrows()

按行遍历,将 DataFrame 的每一行迭代为 (index, Series) 对,可以通过 row[name]row.name 对元素进行访问。

# 循环遍历每一行
for index, row in df.iterrows():
    # 该行的索引
    print(index) 
    # 获取该行的某个字段值
    print(row['姓名'])

结果为:

0
张三
1
李四
2
王五

迭代df.itertuples()

按行遍历,将 DataFrame 的每一行迭代为命名元祖,可以通过 row.name 对元素进行访问,比 iterrows 效率高。「通过这种迭代无法对原始数据进行修改。」

for t in df.itertuples():
    print(t)
    print(t.姓名)

结果为:

Pandas(Index=0, 姓名='张三', 年龄=25, 城市='北京')
张三
Pandas(Index=1, 姓名='李四', 年龄=30, 城市='深圳')
李四
Pandas(Index=2, 姓名='王五', 年龄=35, 城市='上海')
王五

Pandas遍历DataFrame的列

  • 迭代df.items()

  • 迭代df.columns

迭代df.items()

按列遍历,将 DataFrame 的每一列迭代为 (column, Series) 对,可以通过 data[index] 对元素进行访问。

for column, data in df.items():
    # 列名
    print(column)   
    # 访问列数据
    print(data)
    # 访问列中的第1个元素
    print(data[0])

结果为:

姓名
0    张三
1    李四
2    王五
Name: 姓名, dtype: object
张三
年龄
0    25
1    30
2    35
Name: 年龄, dtype: int64
25
城市
0    北京
1    深圳
2    上海
Name: 城市, dtype: object
北京

迭代df.columns

DataFrame对象有一个columns的属性,可返回列的索引。通过该索引,我们可以对DataFrame的列进行遍历。

for c in df.columns:
    # 列名
    print(c)   
    # 访问列
    print(df[c])    
    # 访问列中的第1个元素
    print(df[c][0])

结果为:

姓名
0    张三
1    李四
2    王五
Name: 姓名, dtype: object
张三
年龄
0    25
1    30
2    35
Name: 年龄, dtype: int64
25
城市
0    北京
1    深圳
2    上海
Name: 城市, dtype: object
北京

本文转自 https://mp.weixin.qq.com/s/eFt5-U7F5Fmz7YOqW41ysQ,如有侵权,请联系删除。

感兴趣的小伙伴,赠送全套Python学习资料,包含面试题、简历资料等具体看下方。

一、Python所有方向的学习路线

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照下面的知识点去找对应的学习资源,保证自己学得较为全面。

img
img

二、Python必备开发工具

工具都帮大家整理好了,安装就可直接上手!img

三、最新Python学习笔记

当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。

img

四、Python视频合集

观看全面零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

img

五、实战案例

纸上得来终觉浅,要学会跟着视频一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

img

六、面试宝典

在这里插入图片描述

在这里插入图片描述

简历模板在这里插入图片描述
若有侵权,请联系删除
Pandas是一个广泛使用的Python数据分析库,可以处理具有结构性数据(如表格数据)的大型数据集。要遍历和每,可以使用Pandas的迭代器。迭代器是一种对象,它允许您遍历数据。Pandas的DataFrames和Series对象都有内置的迭代器,可以用来遍历。 要使用Pandas的迭代器遍历和每,可以使用iterrows()和itertuples()方法。iterrows()方法以的形式返回DataFrame,每都是一个元组,在元组中,第一个元素是索引,第二个元素是Series对象,其中包含了每一列的值。itertuples()方法也按返回DataFrame,但是返回的是命名元组,其中包含原始DataFrame的每个索引和每个。 例如,以下代码演示如何使用iterrows()方法遍历: for index, row in df.iterrows(): # 在这里添加迭代代码 在此示例中,df是一个Pandas DataFrame对象。在循环中,iterrows()方法返回每一的索引和Series对象。您可以在循环中自定义代码以对每个自定义操作。 以下代码演示如何使用itertuples()方法遍历: for row in df.itertuples(): # 在这里添加迭代代码 在此示例中,itertuples()方法返回命名元组,其中包含DataFrame中的每数据。就像iterrows()方法一样,您可以编写自定义代码块来在循环中对每个操作。 要遍历,可以使用Pandas的iteritems()方法。此方法返回元组,第一个元素是名,第二个元素是包含该数据的Series对象。例如: for column_name, column_data in df.iteritems(): # 在这里添加迭代代码 在此示例中,iteritems()方法返回一个元组,其中包含名和数据对象。您可以为每个编写自定义代码块以执操作。以上就是使用Pandas迭代器遍历和每的方法。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值