遍历 pandas.core.frame.DataFrame
时间: 2023-11-14 18:06:36 浏览: 172
在 Pandas 中,遍历 DataFrame 有多种方法,最常见的是使用迭代器 iterrows 和 itertuples。
1. iterrows 方法
iterrows 方法返回一个迭代器,每次迭代返回一个包含行索引和该行数据的 Pandas Series。可以使用 for 循环遍历每一行,并通过 Series 的索引获取该行数据的每一列。以下是示例代码:
```
import pandas as pd
# 创建 DataFrame
df = pd.DataFrame({'Name': ['Alice', 'Bob', 'Charlie'], 'Age': [25, 30, 35]})
# 使用 iterrows 方法遍历 DataFrame
for index, row in df.iterrows():
print(f"Index: {index}, Name: {row['Name']}, Age: {row['Age']}")
```
输出结果为:
```
Index: 0, Name: Alice, Age: 25
Index: 1, Name: Bob, Age: 30
Index: 2, Name: Charlie, Age: 35
```
2. itertuples 方法
itertuples 方法返回一个迭代器,每次迭代返回一个命名元组,其中包含行索引和该行数据的所有列。可以像访问元组一样访问每一列数据。以下是示例代码:
```
import pandas as pd
# 创建 DataFrame
df = pd.DataFrame({'Name': ['Alice', 'Bob', 'Charlie'], 'Age': [25, 30, 35]})
# 使用 itertuples 方法遍历 DataFrame
for row in df.itertuples():
print(f"Index: {row.Index}, Name: {row.Name}, Age: {row.Age}")
```
输出结果为:
```
Index: 0, Name: Alice, Age: 25
Index: 1, Name: Bob, Age: 30
Index: 2, Name: Charlie, Age: 35
```
需要注意的是,使用 itertuples 方法遍历 DataFrame 会比使用 iterrows 方法更快,因为 itertuples 方法返回的是命名元组而不是 Pandas Series,所以可以减少一些开销。
阅读全文