📜  df iterrows pandas - Python (1)

📅  最后修改于: 2023-12-03 15:00:24.309000             🧑  作者: Mango

使用df.iterrows() 迭代Pandas DataFrame

在Pandas中,许多操作都是基于DataFrame和Series的数据结构实现的。而遍历和迭代DataFrame是常见任务之一。在这种情况下,使用df.iterrows()函数可以让我们轻松遍历DataFrame并访问每个行的数据。

语法
for index, row in DataFrame.iterrows():
    # 你的逻辑
参数
  • index: 行索引
  • row: 行数据
示例

假设我们有以下数据帧:

import pandas as pd 

data = {'name': ['John', 'Lily', 'Marvin', 'Hannah'], 
'age': [30, 25, 15, 21], 
'city': ['Los Angeles', 'New York', 'San Francisco', 'Boston']
} 

df = pd.DataFrame(data)

我们想要遍历每一行,并输出姓名和年龄:

for index, row in df.iterrows():
    print(row['name'], row['age'])

我们也可以使用df.iterrows()来启动一个处理每行数据的函数:

def process_data(row):
    name = row['name']
    age = row['age']
    print(f"{name} is {age} years old.")
    
    
df.iterrows().apply(process_data)
使用df.iterrows()的注意事项
  • 它返回两个值:行索引和该行的Series数据
  • 它具有较慢的处理速度,应用于大型数据集时,可能会影响性能。
  • 每行数据都作为Series返回,因此可以使用Series上的所有方法来访问特定的值。
  • 数据类型可以是数字,字符串或多个其他类型

因此,如果您需要遍历数据集来进行比较或计算,或遍历行以处理特定的事情,则应该考虑使用df.iterrows()。