Pandas 数据帧itertuples()方法

原文:https://www.studytonight.com/pandas/pandas-dataframe-itertuples-method

在本教程中,我们将学习 PandasDataFrame.itertuples() 法。DataFrame.itertuples() 方法将数据帧的行迭代为namedtuples。当此方法应用于数据帧时,它会返回一个地图对象。我们可以使用返回的对象迭代 DataFrame 中每一行的 namedtuples,第一个字段可能是索引,后面的字段是列值。

下图显示了DataFrame.itertuples() 方法的语法。

句法

DataFrame.itertuples(index=True, name='Pandas')

因素

指数:是布尔。默认值为True.如果该参数为真,则该函数返回索引作为元组的第一个元素。

名称:为字符串或无。默认为“Pandas”。它代表返回的名为“T4”的夫妇的名字。如果为无,则返回正则元组。

示例:遍历数据帧的行

在下面的例子中,我们使用DataFrame.itertuples()方法创建了数据帧。我们尝试迭代数据帧的行。DataFrame.itertuples()方法返回map 对象。

#importing pandas as pd
import pandas as pd
#creating DataFrame
df=pd.DataFrame({"Name":["Navya","Vindya"],"Age":[25,24],"Education":["M.Tech","Ph.d"]},index=['index_1', 'index_2'])
print("-----------The DataFrame is-------")
print(df)
print("---------Iterate over DataFrame rows---------")
print(df.itertuples())

-数据帧是- w - 名称年龄教育 索引 _1 纳维亚 25 米技术 索引 _2 文迪亚 24 博士 -迭代数据帧行- <映射对象在 0x000001C9899720A0 >

示例:DataFrame.itertuples()方法

在前面的例子中,我们可以看到DataFrame.itertuples()方法返回映射对象来迭代数据帧的行。我们可以使用for 循环将数据帧的行显示为namedtuples

#importing pandas as pd
import pandas as pd
#creating DataFrame
df=pd.DataFrame({"Name":["Navya","Vindya"],"Age":[25,24],"Education":["M.Tech","Ph.d"]},index=['index_1', 'index_2'])
print("-----------The DataFrame is-------")
print(df)
print("---------Iterate over DataFrame rows---------")
for rows in df.itertuples():
    print(rows)

由于DataFrame.itertuples() 方法的“index”和“name”参数分别为“True”和“Pandas”,因此它返回第一个元素元组作为索引,返回元组的名称为“Pandas”。

-数据帧为- 名称年龄教育 索引 _1 Navya 25 M.Tech 索引 _2 Vindya 24 博士 -迭代数据帧行- Pandas(索引='index_1 ',名称='Navya ',年龄=25,教育='M.Tech') Pandas(索引='index_2 ',名称='Vindya ',年龄=24,教育= '博士')

示例:在DataFrame.itertuples()方法中设置index=False

如果DataFrame.itertuples() 的索引参数是“False”,我们可以删除index 作为元组的第一个元素。见下面的例子。

#importing pandas as pd
import pandas as pd
#creating DataFrame
df=pd.DataFrame({"Name":["Navya","Vindya"],"Age":[25,24],"Education":["M.Tech","Ph.d"]},index=['index_1', 'index_2'])
print("-----------The DataFrame is-------")
print(df)
print("---------Iterate over DataFrame rows---------")
for rows in df.itertuples(index=False):
    print(rows)

在下面的输出中,我们可以看到,DataFrame.itertuples()函数没有将索引显示为元组。

-数据帧为- 名称年龄教育 索引 _1 纳维雅 25 M.Tech 索引 _2 Vindya 24 博士 -迭代数据帧行- Pandas(名称= '纳维雅',年龄=25,教育='M.Tech') Pandas(名称='Vindya ',年龄=24,教育= '博士')

示例:DataFrame.itertuples()方法

我们可以使用DataFrame.itertuples()函数的name 方法指定返回的命名元组的名称。默认名称将被删除,指定的名称将被显示。见下面的例子。

#importing pandas as pd
import pandas as pd
#creating DataFrame
df=pd.DataFrame({"Name":["Navya","Vindya"],"Age":[25,24],"Education":["M.Tech","Ph.d"]},index=['index_1', 'index_2'])
print("-----------The DataFrame is-------")
print(df)
print("---------Iterate over DataFrame rows---------")
for rows in df.itertuples( name='Rows'):
    print(rows)

如我们所见,namedtuples 的名称显示为“Rows”。

-数据帧为- 名称年龄教育 索引 _1 Navya 25 M.Tech 索引 _2 Vindya 24 博士 -迭代数据帧行- 行(索引='index_1 ',名称='Navya ',年龄=25,教育='M.Tech') 行(索引='index_2 ',名称='Vindya ',年龄=24,教育= '博士')

结论

在本教程中,我们学习了 PandasDataFrame.itertuples()方法。我们学习了语法,通过在数据帧上应用这种方法,我们解决了一些例子并理解了 DataFrame.itertuples()方法。