Python 教程之 Pandas(7)—— 遍历 Pandas DataFrame 中的行和列

简介: Python 教程之 Pandas(7)—— 遍历 Pandas DataFrame 中的行和列

迭代是一个通用术语,用于一个接一个地获取某物的每一项。Pandas DataFrame 由行和列组成,因此,为了迭代数据帧,我们必须像字典一样迭代数据帧。在字典中,我们以与在数据帧中迭代相同的方式迭代对象的键。

在 Pandas Dataframe 中,我们可以通过两种方式迭代元素:

  • 遍历行
  • 遍历列

遍历行:

为了迭代行,我们可以使用三个函数 iteritems()、iterrows()、itertuples()。这三个函数将有助于对行进行迭代。  

使用 iterrows() 对行进行迭代

为了迭代行,我们应用了 iterrows() 函数,该函数返回每个索引值以及包含每行数据的序列。

代码#1:

# importing pandas as pd
import pandas as pd
# 列表字典
dict = {'name':["aparna", "pankaj", "sudhir", "Geeku"],
    'degree': ["MBA", "BCA", "M.Tech", "MBA"],
    'score':[90, 40, 80, 98]}
# 从字典创建数据框
df = pd.DataFrame(dict)
print(df)

image.png

现在我们应用 iterrows() 函数来获取行的每个元素。

# importing pandas as pd
import pandas as pd
# 列表字典
dict = {'name':["aparna", "pankaj", "sudhir", "Geeku"],
    'degree': ["MBA", "BCA", "M.Tech", "MBA"],
    'score':[90, 40, 80, 98]}
# 从字典创建数据框
df = pd.DataFrame(dict)
# 使用 iterrows() 函数遍历行
for i, j in df.iterrows():
  print(i, j)
  print()

输出: 

image.png

代码#2:

# importing pandas module
import pandas as pd
# 从csv文件制作数据框
data = pd.read_csv("nba.csv")
# 对于数据可视化,我们过滤前 3 个数据集
data.head(3)

image.png

现在我们应用 iterrows 来获取数据框中行的每个元素

# importing pandas module
import pandas as pd
# 从csv文件制作数据框
data = pd.read_csv("nba.csv")
for i, j in data.iterrows():
  print(i, j)
  print()

输出: 

image.png

使用 iteritems() 对行进行迭代

为了迭代行,我们使用 iteritems() 函数,该函数迭代每列作为键,以标签作为键的值对,以及作为系列对象的列值。

代码#1:

# importing pandas as pd
import pandas as pd
# 列表字典
dict = {'name':["aparna", "pankaj", "sudhir", "Geeku"],
    'degree': ["MBA", "BCA", "M.Tech", "MBA"],
    'score':[90, 40, 80, 98]}
# 从字典创建数据框
df = pd.DataFrame(dict)
print(df)

image.png

现在我们应用一个 iteritems() 函数来检索一行数据帧。

# importing pandas as pd
import pandas as pd
# 列表字典
dict = {'name':["aparna", "pankaj", "sudhir", "Geeku"],
    'degree': ["MBA", "BCA", "M.Tech", "MBA"],
    'score':[90, 40, 80, 98]}
# 从字典创建数据框
df = pd.DataFrame(dict)
# 使用 iteritems() 函数检索行
for key, value in df.iteritems():
  print(key, value)
  print()

输出: 

image.png

代码#2:

# importing pandas module
import pandas as pd
# 从csv文件制作数据框
data = pd.read_csv("nba.csv")
# 对于数据可视化,我们过滤前 3 个数据集
data.head(3)

输出: 

image.png

现在我们应用 iteritems() 以从数据框中检索行

# importing pandas module
import pandas as pd
# 从csv文件制作数据框
data = pd.read_csv("nba.csv")
for key, value in data.iteritems():
  print(key, value)
  print()

输出: 

image.png

使用 itertuples() 对行进行迭代

为了遍历行,我们应用了一个函数 itertuples(),这个函数为 DataFrame 中的每一行返回一个元组。元组的第一个元素将是行的相应索引值,而其余的值是行值。

代码#1:

# importing pandas as pd
import pandas as pd
# 列表字典
dict = {'name':["aparna", "pankaj", "sudhir", "Geeku"],
    'degree': ["MBA", "BCA", "M.Tech", "MBA"],
    'score':[90, 40, 80, 98]}
# 从字典创建数据框
df = pd.DataFrame(dict)
print(df)

image.png

现在我们应用一个 itertuples() 函数来获取每一行的元组

# importing pandas as pd
import pandas as pd
# 列表字典
dict = {'name':["aparna", "pankaj", "sudhir", "Geeku"],
    'degree': ["MBA", "BCA", "M.Tech", "MBA"],
    'score':[90, 40, 80, 98]}
# 从字典创建数据框
df = pd.DataFrame(dict)
# 使用 itertuples()
for i in df.itertuples():
  print(i)

输出: 

image.png

代码#2:

# importing pandas module
import pandas as pd
# 从csv文件制作数据框
data = pd.read_csv("nba.csv")
# 对于数据可视化,我们过滤前 3 个数据集
data.head(3)

image.png

现在我们应用一个 itertuples() 来获取每行的 atuple

# importing pandas module
import pandas as pd
# 从csv文件制作数据框
data = pd.read_csv("nba.csv")
for i in data.itertuples():
  print(i)

输出: 

image.png

遍历 Columns :

为了遍历列,我们需要创建一个数据框列的列表,然后遍历该列表以提取数据框列。

代码#1:

# importing pandas as pd
import pandas as pd
# 列表字典
dict = {'name':["aparna", "pankaj", "sudhir", "Geeku"],
    'degree': ["MBA", "BCA", "M.Tech", "MBA"],
    'score':[90, 40, 80, 98]}
# 从字典创建数据框
df = pd.DataFrame(dict)
print(df)

image.png

现在我们遍历列为了遍历列,我们首先创建一个数据框列的列表,然后遍历列表。

python

复制代码

# 创建数据框列的列表
columns = list(df)
for i in columns:
  # printing the third element of the column
  print (df[i][2])

输出: 

image.png

代码#2:

# importing pandas module
import pandas as pd
# 从csv文件制作数据框
data = pd.read_csv("nba.csv")
# 对于数据可视化,我们过滤前 3 个数据集
col = data.head(3)
col

image.png

现在我们遍历 CSV 文件中的列以遍历列,我们创建数据框列的列表并遍历列表

# 创建数据框列的列表
clmn = list(col)
for i in clmn:
  # 打印列的第三个元素
  print(col[i][2])

输出: 

image.png

目录
相关文章
|
1天前
|
Python
python pandas学习(一)
该代码段展示了四个主要操作:1) 删除指定列名,如商品id;2) 使用正则表达式模糊匹配并删除列,例如匹配订单商品名称1的列;3) 将毫秒级时间戳转换为带有时区调整的日期时间格式,并增加8小时以适应本地时区;4) 将列表转换为DataFrame后保存为Excel文件,文件路径和名称根据变量拼接而成。
12 3
|
1月前
|
存储 数据挖掘 数据处理
Python Pandas入门:行与列快速上手与优化技巧
Pandas是Python中强大的数据分析库,广泛应用于数据科学和数据分析领域。本文为初学者介绍Pandas的基本操作,包括安装、创建DataFrame、行与列的操作及优化技巧。通过实例讲解如何选择、添加、删除行与列,并提供链式操作、向量化处理、索引优化等高效使用Pandas的建议,帮助用户在实际工作中更便捷地处理数据。
47 2
|
3月前
|
数据采集 数据可视化 数据处理
Python数据科学:Pandas库入门与实践
Python数据科学:Pandas库入门与实践
|
3月前
|
机器学习/深度学习 数据采集 数据可视化
Python数据科学实战:从Pandas到机器学习
Python数据科学实战:从Pandas到机器学习
|
3月前
|
算法 定位技术 Python
震惊!Python 图结构竟然可以这样玩?DFS&BFS 遍历技巧大公开
在 Python 编程中,图是一种重要的数据结构,而深度优先搜索(DFS)和广度优先搜索(BFS)是遍历图的两种关键算法。本文将通过定义图的数据结构、实现 DFS 和 BFS 算法,并通过具体示例展示其应用,帮助读者深入理解这两种算法。DFS 适用于寻找路径和检查图连通性,而 BFS 适用于寻找最短路径。掌握这些技巧,可以更高效地解决与图相关的复杂问题。
44 2
|
3月前
|
数据采集 数据可视化 数据挖掘
Python数据分析:Pandas库实战指南
Python数据分析:Pandas库实战指南
|
3月前
|
并行计算 数据挖掘 大数据
Python数据分析实战:利用Pandas处理大数据集
Python数据分析实战:利用Pandas处理大数据集
|
3月前
|
数据采集 存储 数据挖掘
Python数据分析:Pandas库的高效数据处理技巧
【10月更文挑战第27天】在数据分析领域,Python的Pandas库因其强大的数据处理能力而备受青睐。本文介绍了Pandas在数据导入、清洗、转换、聚合、时间序列分析和数据合并等方面的高效技巧,帮助数据分析师快速处理复杂数据集,提高工作效率。
114 0
|
5月前
|
机器学习/深度学习 数据处理 Python
从NumPy到Pandas:轻松转换Python数值库与数据处理利器
从NumPy到Pandas:轻松转换Python数值库与数据处理利器
148 1
|
3月前
|
存储 数据挖掘 数据处理
Python数据分析:Pandas库的高效数据处理技巧
【10月更文挑战第26天】Python 是数据分析领域的热门语言,Pandas 库以其高效的数据处理功能成为数据科学家的利器。本文介绍 Pandas 在数据读取、筛选、分组、转换和合并等方面的高效技巧,并通过示例代码展示其实际应用。
83 2

推荐镜像

更多