📜  pandas 迭代 - Python (1)

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

Pandas 迭代 - Python

Pandas 是 Python 中一个非常强大的数据分析库,它提供了许多功能用于读取、清洗和分析数据,其中包括迭代数据集。

迭代数据集是一种重要的数据分析技能,它能够帮助您使用循环(loop)遍历整个数据集,从而进行特定的数据分析任务。

Pandas 提供了多种方法来迭代数据集,包括 .iterrows.itertuples.iteritems 等。下面我们将一一介绍这些方法如何用于数据迭代。

.iterrows() 方法

.iterrows() 方法是 Pandas 中最基本的数据迭代方法。它返回 DataFrame 中每一行的索引及其对应的数据,以元组(tuple)的形式返回。

import pandas as pd

df = pd.DataFrame({
    'name': ['John', 'Mike', 'Lisa', 'Bob'],
    'age': [25, 28, 32, 21],
    'location': ['New York', 'Paris', 'London', 'Tokyo']
})

for index, row in df.iterrows():
    print(index, row)

输出:

0 name           John
  age              25
  location    New York
Name: 0, dtype: object
1 name           Mike
  age              28
  location      Paris
Name: 1, dtype: object
2 name           Lisa
  age              32
  location     London
Name: 2, dtype: object
3 name            Bob
  age              21
  location      Tokyo
Name: 3, dtype: object
.itertuples() 方法

.itertuples() 方法与 .iterrows() 类似,但返回的是一个命名元组(NamedTuple),该元组包含了每行的索引和值。

import pandas as pd

df = pd.DataFrame({
    'name': ['John', 'Mike', 'Lisa', 'Bob'],
    'age': [25, 28, 32, 21],
    'location': ['New York', 'Paris', 'London', 'Tokyo']
})

for row in df.itertuples():
    print(row)

输出:

Pandas(Index=0, name='John', age=25, location='New York')
Pandas(Index=1, name='Mike', age=28, location='Paris')
Pandas(Index=2, name='Lisa', age=32, location='London')
Pandas(Index=3, name='Bob', age=21, location='Tokyo')
.iteritems() 方法

.iteritems() 方法用于迭代 DataFrameSeries 的每一列,返回一个包含列名和数据的元组。

import pandas as pd

df = pd.DataFrame({
    'name': ['John', 'Mike', 'Lisa', 'Bob'],
    'age': [25, 28, 32, 21],
    'location': ['New York', 'Paris', 'London', 'Tokyo']
})

for column_name, column_data in df.iteritems():
    print(column_name, column_data)

输出:

name 0    John
1    Mike
2    Lisa
3     Bob
Name: name, dtype: object
age 0    25
1    28
2    32
3    21
Name: age, dtype: int64
location 0    New York
1       Paris
2      London
3       Tokyo
Name: location, dtype: object
总结

本文介绍了在 Pandas 中使用迭代方法来遍历数据集的方法,包括 .iterrows().itertuples().iteritems()。不同的方法适用于不同的情况,您应该根据自己的需求选择适当的方法来迭代数据集。