在Python-Pandas中循环或遍历数据框的所有或某些列
在本文中,我们将讨论如何循环或迭代DataFrame的全部或某些列?有多种方法可以完成此任务。
首先创建一个数据框,然后看一下:
代码:
现在,让我们看看不同的方式来迭代DataFrame或某些列:
方法#1: 使用DataFrame.iteritems():
Dataframe类提供了一个成员函数iteritems()
,该函数提供了一个迭代器,该迭代器可用于迭代数据帧的所有列。对于Dataframe中的每一列,它将返回一个迭代器到包含列名称及其内容为序列的元组。
代码:
方法2: 使用[]运算符:
我们可以遍历列名并选择所需的列。
代码:
方法3: 迭代多于一列:
假设我们需要迭代多于一列。为此,我们可以从数据框中选择多个列并对其进行迭代。
代码:
import pandas as pd # List of Tuples students = [('Ankit', 22, 'A'), ('Swapnil', 22, 'B'), ('Priya', 22, 'B'), ('Shivangi', 22, 'B'), ] # Create a DataFrame object stu_df = pd.DataFrame(students, columns =['Name', 'Age', 'Section'], index =['1', '2', '3', '4']) # Iterate over two given columns # only from the dataframe for column in stu_df[['Name', 'Section']]: # Select column contents by column # name using [] operator columnSeriesObj = stu_df[column] print('Colunm Name : ', column) print('Column Contents : ', columnSeriesObj.values)
输出:
方法4: 以相反的顺序迭代列:
我们也可以以相反的顺序遍历列。
代码:
方法5: 使用索引(iloc):
要按索引遍历Dataframe的列,我们可以遍历一个范围(即0到最大列数),而对于每个索引,我们可以使用iloc []选择列的内容。
代码: