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

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

# 创建数据框列的列表
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


目录
相关文章
|
9天前
|
数据可视化 DataX Python
Seaborn 教程-绘图函数
Seaborn 教程-绘图函数
40 8
|
9天前
Seaborn 教程-主题(Theme)
Seaborn 教程-主题(Theme)
30 7
|
9天前
|
Python
Seaborn 教程-模板(Context)
Seaborn 教程-模板(Context)
33 4
|
9天前
|
数据可视化 Python
Seaborn 教程
Seaborn 教程
26 5
|
1月前
|
Python
SciPy 教程 之 Scipy 显著性检验 9
SciPy 教程之 Scipy 显著性检验第9部分,介绍了显著性检验的基本概念、作用及原理,通过样本信息判断假设是否成立。着重讲解了使用scipy.stats模块进行显著性检验的方法,包括正态性检验中的偏度和峰度计算,以及如何利用normaltest()函数评估数据是否符合正态分布。示例代码展示了如何计算一组随机数的偏度和峰度。
28 1
|
1月前
|
BI Python
SciPy 教程 之 Scipy 显著性检验 8
本教程介绍SciPy中显著性检验的应用,包括如何利用scipy.stats模块进行显著性检验,以判断样本与总体假设间的差异是否显著。通过示例代码展示了如何使用describe()函数获取数组的统计描述信息,如观测次数、最小最大值、均值、方差等。
29 1
|
1月前
|
Python
SciPy 教程 之 Scipy 显著性检验 6
显著性检验是统计学中用于判断样本与总体假设间是否存在显著差异的方法。SciPy的scipy.stats模块提供了执行显著性检验的工具,如T检验,用于比较两组数据的均值是否来自同一分布。通过ttest_ind()函数,可以获取两样本的t统计量和p值,进而判断差异是否显著。示例代码展示了如何使用该函数进行T检验并输出结果。
29 1
|
19天前
|
人工智能 数据可视化 数据挖掘
探索Python编程:从基础到高级
在这篇文章中,我们将一起深入探索Python编程的世界。无论你是初学者还是有经验的程序员,都可以从中获得新的知识和技能。我们将从Python的基础语法开始,然后逐步过渡到更复杂的主题,如面向对象编程、异常处理和模块使用。最后,我们将通过一些实际的代码示例,来展示如何应用这些知识解决实际问题。让我们一起开启Python编程的旅程吧!
|
18天前
|
存储 数据采集 人工智能
Python编程入门:从零基础到实战应用
本文是一篇面向初学者的Python编程教程,旨在帮助读者从零开始学习Python编程语言。文章首先介绍了Python的基本概念和特点,然后通过一个简单的例子展示了如何编写Python代码。接下来,文章详细介绍了Python的数据类型、变量、运算符、控制结构、函数等基本语法知识。最后,文章通过一个实战项目——制作一个简单的计算器程序,帮助读者巩固所学知识并提高编程技能。
|
6天前
|
Unix Linux 程序员
[oeasy]python053_学编程为什么从hello_world_开始
视频介绍了“Hello World”程序的由来及其在编程中的重要性。从贝尔实验室诞生的Unix系统和C语言说起,讲述了“Hello World”作为经典示例的起源和流传过程。文章还探讨了C语言对其他编程语言的影响,以及它在系统编程中的地位。最后总结了“Hello World”、print、小括号和双引号等编程概念的来源。
98 80

热门文章

最新文章