📅  最后修改于: 2020-04-20 04:30:52             🧑  作者: Mango
迭代是一个总称,用于表示一件一件的事情。Pandas DataFrame由行和列组成,因此,为了迭代数据帧,我们必须像字典一样迭代数据帧。在字典中,我们以必须在数据帧中进行迭代的方式遍历对象的键。
在本文中,我们使用“ nba.csv
“文件下载CSV,请单击此处。
在Pandas Dataframe中,我们可以通过两种方式迭代元素:
为了遍历行,我们可以用三个函数iteritems()
, iterrows()
,itertuples()
。这三个函数将有助于迭代行。
iterrows()
为了遍历行,我们应用了一个iterrows()
函数,该函数返回每个索引值以及包含每一行数据的序列。
代码1:
# 导入pandas
import pandas as pd
# 列表字典
dict = {'name':["aparna", "pankaj", "sudhir", "Geeku"],
'degree': ["MBA", "BCA", "M.Tech", "MBA"],
'score':[90, 40, 80, 98]}
# creating a dataframe from a dictionary
df = pd.DataFrame(dict)
print(df)
现在我们应用iterrows()
函数以获取行的每个元素。
# 导入pandas
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()
输出:
代码#2:
# 导入pandas
import pandas as pd
# 从csv文件制作数据帧
data = pd.read_csv("nba.csv")
# 对于数据可视化,我们过滤了前3个数据集
data.head(3)
现在我们应用一个迭代来获取数据框中行的每个元素
# 导入pandas
import pandas as pd
# 从csv文件制作数据帧
data = pd.read_csv("nba.csv")
for i, j in data.iterrows():
print(i, j)
print()
输出:
iteritems()
为了遍历行,我们使用iteritems()
函数,此函数遍历每一列作为键。
代码1:
# 导入pandas
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)
现在,我们应用一个iteritems()
函数以检索数据帧的行。
# 导入pandas
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()
输出:
代码2:
# importing pandas module
import pandas as pd
# making data frame from csv file
data = pd.read_csv("nba.csv")
# for data visualization we filter first 3 datasets
data.head(3)
输出:
现在,我们应用a iteritems()
以便从数据框中检索行
# 导入pandas
import pandas as pd
# 从csv文件制作数据帧
data = pd.read_csv("nba.csv")
for key, value in data.iteritems():
print(key, value)
print()
输出:
itertuples()
为了遍历行,我们应用了一个函数,itertuples()
该函数为DataFrame中的每一行返回一个元组。元组的第一个元素将是该行的相应索引值,而其余值是该行值。
代码1:
# 导入pandas
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)
现在我们应用itertuples()
函数以获取每一行的元组
# 导入pandas
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)
# using a itertuples()
for i in df.itertuples():
print(i)
输出:
代码2:
# importing pandas module
import pandas as pd
# making data frame from csv file
data = pd.read_csv("nba.csv")
# for data visualization we filter first 3 datasets
data.head(3)
现在我们应用一个itertuples()
来获取每行的合并
# 导入pandas
import pandas as pd
# 从csv文件制作数据帧
data = pd.read_csv("nba.csv")
for i in data.itertuples():
print(i)
输出:
为了遍历列,我们需要创建一个数据框列的列表,然后遍历该列表以拉出数据框列。
代码1:
# 导入pandas
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)
现在我们遍历各列,以便遍历各列,首先创建一个数据框列的列表,然后遍历该列表。
# creating a list of dataframe columns
columns = list(df)
for i in columns:
# printing the third element of the column
print (df[i][2])
输出:
代码#2:
# 导入pandas
import pandas as pd
# 从csv文件制作数据帧
data = pd.read_csv("nba.csv")
# 为了进行数据可视化,我们过滤了前3个数据集
col = data.head(3)
col
现在我们遍历CSV文件中的列,以便遍历列,我们创建数据框列的列表并遍历列表
# 创建数据框列的列表
clmn = list(col)
for i in clmn:
# 打印列的第三个元素
print(col[i][2])
输出: